The proper way to center-align a block level element like a div is to specify auto left and right margins; since the outer div seems to be the only one, this would set top and bottom margins to zero and left and right to auto:
Text-align should only apply to inline content; IE incorrectly applies this to block level elements as well.
You should really look into CSS a bit more; margins and padding go a long way in replacing junk like this:
What text above which orange lines? You mean the h2's? In IE everything shows up sort-of-alright, but it sure can be done a lot simpler; again, padding would go a long way into getting everything to line up nicely.
The text above the orange lines are placed in the bottom of the table.
Looks like you've beaten me, evo...