Burning Leonardo bootloader difficulties

I've had difficulty burning the leonardo bootloader into the 32u4 since day one for some reason. The designs are all different and eventually works after a few repeated tries. The hardware used is:
-windows 7
-adafruits thru hole USBtinyISP
-sparkfuns SMT version of the USBtinyISP
-32u4 @ 3.3V and also 5.0V
-16Mhz crystal
-Arduino IDE where I select Leonardo and burn bootloader

Occasionally the bootloader will successfully burn on the first try but usually it requires another attempt, power cycle, trying on another PC, power cycle and then it works.

I'm wondering if I might have better luck with the AVR ISP MkII abd the Arduino IDE? Possibly more complicated route of installing the Atmel software, setting the fuses manually and then burning the bootloader hex file. So far i've been cheating by just using the IDE.

Using the USBtinyISP should work fine with burning bootloader from the IDE. I've used both of those types of programmers many times without problems from the IDE. You haven't really explained what the actual errors are. You should post the verbose output from the IDE to get better help. Most often it is wiring problems or custom PCB issues. If you are using a custom PCB then you should post schematics and pictures of the PCB, otherwise people will only be guessing.