I can't pin it down, but you might find it if you rebuild the skin adding one layer at a time and preview in both browsers at each save. Just copy the divs into a new document and save and view one step at a time.
From fiddling around with the styles, I can however see that this one is the likely culprit:
.toppane {
width : 100%;
height : 78px;
background-color : white;
}
Delete it and you'll see the difference.
Also.. your skin is loading the skin.css twice... remove the stylesheet link from the skin ascx file.
Make sure you have the Web Developer and Firebug extensions installed in Firefox as well as the Developer Toolbar in IE. Both of these have CSS tools (Edit CSS and Inspect Element) that are essential for tracking this sort of thing down.
I built a vaguely similar skin once and also had to redo it from top-down to get it right in Firefox. I recall that to get them to match in both browsers, there was no way around using a single cell table to surround the entire page, but that was in IE6/FF1.5 days. The issue was around what the divs thought they were relative to and IE7 is no doubt different.. in fact, this might even require you set a quirks mode.. hopefully someone else will know more.
Regards,
Rob