Yup, USBService work a treat when you take care of it each millisecondes or so. Another route is to use a Timer intterrupt such as in the first USBDemo version.

EVEN BETTER, look at the following modified version A.K.A post #148 which use Darrel's instant interrupts...
http://www.picbasic.co.uk/forum/show...&postcount=148

so now you no longer need to care about USBSERVICE, it will be done automatically... BUT i've NEVER tried with the bootloader firmware installed