Driver install hurdle for custom ATMEGA32U4 device

Background: I am making my own ATMEGA32U4 device based on the Caterina bootloader and Arduino sketch. I learned how to compile the Caterina bootloader from online tutorial and help offered by hiduino. I didn't change VID or PID (using Arduino Micro VID and PID) until today. I am trying to make driver install easy for an end user as plug and play.

Problem: off the bat, the device doesn't install in win 8. There are two "Other devices". I can force install the Ports->Arduino LLC->Arduino Micro and then Arduino Micro bootloader, but that is lame. I would have to rely on the Arduino IDE being present. I also wanted my own device name to show up in device manager.

Attempts:

  1. I tried to "tamper" (according to M$) with the Arduino.inf by adding my device to the list. Win 8 wouldn't install it since the encripted hash file Arduino.cat won't match.
  2. I removed reference to Arduino.cat in the .inf file, but win 8 still won't install it due to the fact it's a 3rd party .inf now, without the M$ hash.
  3. I looked at a couple versions of .inf by adafruit and sparkfun based on LUFA CDC etc. but couldn't understand it. The Arduino.inf is so much easier to understand. So I didn't try. I suppose I also have to force win 8 to install it maybe in a special boot mode but I didn't try.

Question:
So for those that have developed ATMEGA32U4 devices, what is your solution for driver install issues? I guess the best thing is just to force the end user to install Arduino IDE, then detail the steps to force install arduino LLC drivers. I guess mac and linux users can have their laughs now.

Thanks for reading!

BTW, I wrote a long open source document on how to compile the bootloader and add your VID and PID. It's a shame that I can't put "how to install driver" to complete the document and post it somewhere. The document also features how to reuse the TX/RX/L_LED that the bootloader and regular program is using so you get 3 extra pins.

OK, a different angle: does atmel have a driver that I can use instead of arduino driver? This is a really major hurdle.