Con tutta probabilità il problema è legato al famoso bug di IE che nel caso un oggetto abbia sia float right che margin-right impostati il margine destro risulta raddoppiato.

Proav a togliere il margin da ciò che è float e vedi se tutto è ok.

Io poi metterei anche un width:100% al BODY.

Ciao!

C'è anche qualche piccolo difetto nel css e nell'html, verifica la validazione...