Ah, but the real solution is not to code for the browser and to "hack" your CSS to look the way you want it to. The real solution is to rethink your css. Just like php's "if you're using eval() you're doing something wrong", "if you're using conditional comments, you're doing something wrong". I have had plenty of layouts that have looked perfectly fine between IE, Mozilla, Opera, Safari and Konqueror.
As NogDog said, make your stylesheets keep IE out of quirks mode, use the proper standards, and know the difference between padding, margin and how borders will effect width and height 😉 It's all about understanding the specifications.
The only thing I really see needing to differentiate between IE and other browsers is AJAX. CSS should just be a one-time thing.