We recently rolled out IE8 to our organisation (2,500 people).
Given we had several legacy internal web apps that did not support IE8 (but worked fine in Compatibility Mode), we decided to put our internal domain into the Group Policy "policy list" of sites to be rendered automatically in Compatibility View.
This worked for almost everybody - compatibility mode turns on, and the compatibility button vanishes.
But there were seemingly about 100 users who did not get the policy setting (though they did get other IE8 policies).
I checked the registry, and the users are getting the policy list entries
[KEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\BrowserEmulation\PolicyList]
But they are not getting the "switch on" flag for compatibility view:
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\BrowserEmulation]
"MSCompatibilityMode"=dword:00000001
Setting the registry flag, followed by a reboot, fixes the problem. I can bulk distribute this fix. But there must be a reason for this issue.