The div #bunting includes all the login links etc, and has the background image. Try making the css:
background: url("/image/bunting.png") no-repeat scroll 0 0 transparent;
margin: 0 auto;
z-index isn't going to make any difference because #bunting contains all the elements you're trying to rearrange. Giving the element padding-top pushes the content down without changing the position of the background, and setting no-repeat means the image will only show once.
EDIT: Reading your post again I'm not quite certain that's the effect you want...if you just want the bunting to be on top of #container then you need to rearrange your html so #bunting doesn't include #container. Then you can use z-index to position it on top of #container.