I've just been facing the exact same thing. Several of the ones you list work fine for me (with the "OSRequiredBundle"="Root" keys added). Namely:
lspcidrv.kext
Natit.kext
VoodooBattery.kext
VoodooPower.kext
OK, so I edited these, and after adding/changing the key to Root, these do load.
Problem is, something like SafeBoot should be sufficient e.g. in Natit.kext, and I really shouldn't have to mess with keys, particularly when they are not just missing, but are present and properly chosen.
The ones that gave me fits were VoodooHDA and AppleIntelIntegratedFramebuffer and AppleIntelGMA950. VoodooHDA.kext will require you also copy over the vanilla Apple kexts IOAudioFamily.kext & OSvKernDSPLib.kext. In my experience, I did NOT have to modify them in any way (such as with the keys mentioned above).
Turns out, all these were already in my Extra/Extensions folder as it is. So I'm not sure why they still don't load...
Note that AttansicL1eEthernet.kext similarly needs IONetworkingFamily.kext, but doesn't declare it properly as a dependency - it will claim it's loading fine even though your ethernet jack is dead.
Yup, the IONetworkingFamily.kext I already had there anyway, and I don't seem to have any issue with the AttansicL1eEthernet.kext, so all's good on that front. Only the generic issue with this driver or hardware, that it only works when the cable is plugged-in at boot time. It can then be removed and added as often as needed, but if it's not there at boot time, that's that and the port is unavailable for that session.
AppleIntelIntegratedFramebuffer and AppleIntelGMA950 will require several kexts:
IOACPIFamily.kext
IOGraphicsFamily.kext
IONDRVSupport.kext
IOPCIFamily.kext
Hm, these too were already present...
...not even adding the root key would load them from Extra/Extensions, and these along with the IOBluetoothFamily.kext are the most important ones, because these are the only patched original Apple kexts, and as such precisely these I don't want to have to load from /System/Library/Extensions.
I guess I could try messing with the version numbers or do some similar hack, to my patched versions not just have the same version as they have now, but a "newer/higher" one. But again, that would be a hack.
In short, the most important kexts I can't get rid of in the /System/Library/Extensions folder.
So no love with these, key present or not, and with all dependencies in place:
- VoodooHDA.kext
- VoodooPS2Controller.kext
- ClamshellDisplay.kext
- AppleIntelGMA950.kext
- AppleIntelIntegratedFramebuffer.kext
- IOBluetoothFamily.kext
So given that I can't achieve the main objective, and given that just moving some of them out of there still requires modifying kext from how they are distributed (causing potential source of confusion when comparing my setup with others), I decided to revert and just have all Hackintosh kexts in both places and let the system pick where to load them from.
Clearly, this isn't optimal, but right now, I'm not going to be able to change it.
On the other hand, clarification from some of the developers if this is supposed to be this way (and if so why), or considered a bug that will eventually be fixed, would be helpful, because if not anything else, it would help me plan future activity (e.g. if it's supposed to be that way, I won't have to repeat these experiments with each future iteration of Chameleon or Mac OS X to see if the situation has improved).
Cheers.