Some of your validation errors are structural rather than cosmetic, in particular the extra table tags that close features that haven't been opened. When this happens browsers struggle to cope and often find different solutions leading to inconsistent displays. However, that's not what is causing your first problem.
Instead you have a CSS error right at the top of your file. You can't float the body tag, or to be more accurate, you can but it's meaningless. Body refers to everything that you can normally see in your browser window, so if you give it a background color it will stretch from top to bottom and left to right. So floating it left is meaningless and somewhat confusing to browsers. FF seems to be trying to cope by instead floating the contents of body to the left thus masking your real problem. IE, more correctly in my view, ignores this instruction completely.
So where is the real problem? If you do a search on #mainWrapper you will find a bit of contradictory CSS. So you set a padding-top and then promptly override it. Then you set margins to 0 before overriding with margin auto. It's this last one that centers your page. Take this out and your left margin will return to 0 and everything will slide across to the left. Cleaning up your CSS generally will make these types of problems easier to spot.
The gap in IE between the main body of your page and the footer could be the result of an IE whitespace bug or due to IE trying to handle your the extra table tags differently to FF. I recommend cleaning them out and then the problem may become a little more clear.