Yeah. That's always going to be trouble.
Your problem isn't so much that IE (likely just your copy) is different, but that how a font is displayed and what its relative size is, is heavily influenced by the desktop environment's settings on that machine, as well as browser settings. The font you choose to render must be available on all the platforms you want to reach, and if you look around this forum you'll see a recent thread where someone is exasperated by different rendering of a font at different sizes even. Some fonts may have a size where they are displayed "jaggedly" instead of smoothly.
Many browsers may start with "default px size" at 16, but this in turn is influenced by desktop settings, and may not actually render at 16px at all (such is the case with my machines).
It's a common issue on the front end for sure, but the solutions so far have been lots of math based on shaky default user assumptions.
I think you may have to decide when you want the information to be in a flexible unit relative to user settings (ex, em... btw I have no idea how well supported ex is, have you tried em?) and when the rendered font size is more important. In those cases, you may be simply writing the CSS (if CSS is doing the display) directly into pixels (and not converting but simply stating, "this tag gets displayed at this px size" etc). This still won't be absolutely the same cross-machine (as mentioned above, the font you choose has influence and odd-sized fonts may get slight rounding differences in browsers) but it should be close enough to satisfy.
In which case, you'll be looking at your flexible version and just look at the ratios between your different sizes (if you have a Heading size vs a plain-data size) and the spacing you have between lines and things. When you try a px version, you'd try to make the ratio of sizes look about the same.