Ich würds anders machen.
Dem Layer weist du die CSS-Eigentschaft "margin: auto;" zu. Das reicht eigentlich schon, nur der Internet Explorer spielt nicht mit. Für ihn musst du dann noch eine etwas unlogische zweite Sache machen. Du musst dem übergeordneten Container-Element (z.b. body, div, ...) noch "text-align: center;" zuweisen.
Das Problem bei der Sache ist nur, dass dann eben alles in diesem übergeordneten Container-Element mittig ausgerichtet wird.
Ob es so funktioniert kann ich dir nicht genau sagen, aber ich bin mir relativ sicher, da ich diese Variante auch schon mit TABLE, DIV und P probiert habe. Müsste mit LAYER auch gehen.