¿Alguna razón que te obligue a poner un fondo debajo en el flujo del html y después querer subirlo con css?
Si no lo hay, un poco de sentido común, que ya lo decía Santos Rondiche: "primero el burro y después la albarda"
Prueba
Cita: #main-container {
background:#363739;
clear:both;
height:800px;
margin:auto;
position:relative;
width:1000px;
}
#container {
background:#FFFFFF url(images/main-container-bg.png) no-repeat;
height:auto;
padding-top:15px;
position:relative;
width:1000px;
}
Posiblemente conlleve alguna otra modificación en elementos posteriores. No he mirado a fondo todos los efectos.
Un saludo