Although it is not quite relevant now when Sitecore 6.5.x is out, I'll give a bit detailed explanation here for those who face with the problem.
To begin with, Sitecore itself DOESN'T NEED the IIS6 compatibility feature to be enabled. It runs just fine on a pure IIS 7 from the very first version, which supports IIS 7. It is ONLY SETUP.EXE which needs this feature on.
Some technical background: Sitecore installation program is built with WiX, plus a number of custom things on top. As long as it installs an ASP.NET web application, it has to talk to IIS during the installation process (create IIS website, application pool, etc.) When Vista arrived, the WiX toolset didn't have the native support for IIS 7 (according to the people involved, it's a consequence of complex relationships with Microsoft IIS team, etc. :)).
So, the only option was to turn IIS6 compatibility ON in order to perform necessary actions from inside the installation package.
And here we come to another problem. Basically, only "IIS6 metabase compatibility" is required, but there was a bug in the Sitecore installation, which made the users to enable the entire "IIS6 compatibility" stack. This one was fixed long time ago, but, obviously the installation program is not rebuilt for the older versions.
So, to summarize:
- If you use Sitecore 6.5.x or higher, you don't have to worry about it. There's no IIS6 compatibility dependency any longer
- The "IIS6 compatibility" is required only for setup.exe to do its job - you can safely disable it back after Sitecore installation
- If you are out of luck and have to install that very version, just enable the entire IIS6 compatibility feature to be sure it passes fine
Hope it sheds more light.