It seems to be the IE filter causing problems yet again. It seems that these filters are causing more problems these days now that everyone is starting to use them again.
Either remove the filter or remove the absolute positiong as none of the filters work properly on positioned elements.
margin: 0px auto;
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";
However, I don't think that gradient filter will do what you want. You would be better off using transparent background images for IE7+ and just let IE6 haver solid colours.
You also need to remove the xml declaration as it will trip quirks mode in IE6.
Remove this as its optional anyway.
<?xml version="1.0" encoding="utf-8"?>