Bongú!
<td style="vertical-align:middle;">
Da kann Redmond wohl ausnahmsweise mal nichts dafür wenn in Sprachumfang von css align-Befehle "fehlen".
Von "fehlen" kann eigentlich nicht die Rede sein.
<td style="vertikal-align:middle;"> hat allerdings in keinster Weise dieselbe Bedeutung wie <td valign="middle">.
Mit 'vertikal-align' bestimmt du lediglich die vertikale Ausrichtung eines inline-Elements in dessen eigener Line-Box.
Dies ist zugegebernmaßen nicht offensichtlich, ich glaube aber, dass die in SELFHTML gezeigte Abbildung dies recht gut veranschaulicht:
http://selfhtml.teamone.de/css/eigenschaften/ausrichtung.htm#vertical_align
Auf den in deinem Beispiel vorhandenen DIV-Container selbst hat diese Formatierung also nicht den geringsten Einfluß.
<td valign="middle"> hingegen bestimmt die vertikale Ausrichtung jeglichen Inhalts der Tabellenzelle, also auch für deinen DIV-Container.
Warum allerdings die CSS-Angabe 'margin:auto' zwar in der horizontalen nicht aber in der vertikalen Ausrichtung greift, weiß ich leider auch nicht.
Sahha,
kerki