Lo que te ocurre es lo siguiente: si haces un desplazamiento superior del 50% para centrar verticalmente, el 50% será con respecto al área de visión, por lo que si restas la mitad del tamaño de la caja con el margen superior negativo éste será en pixels y siempre igual, siempre el mismo tamaño, por lo que reduciendo la ventana, cuando el 50% del área de visión sea muy inferior a la corrección que haces con el margen superior negativo, todo el bloque se esconderá por arriba. Pruébalo en tu propia resolución reduciendo la ventana.
Si sólo tuviéramos que pelear con navegadores que respetaran los estándares la solución sería sencilla, pero como ahí está Explorer para aportar un poco de estímulo a nuestra neuronas
hay que buscar otras maneras de resolverlo.
Mira en esta dirección:
http://www.araudi.net/, y en la columna de la izquierda ("Estructurales"), verás tres posibles soluciones compatibles con IE y el resto (centrado vertical 1, 2 y 3). A ver si alguna de ellas puedes aplicarla a tu caso.