The simplest and dirtiest 'USB programmer' for PIC I've made was the 'ol JDM with a cheap USB-serial cable and a mini voltage booster for the 13v for MCLR.
Not exactly 'true' USB as its basically serial, but using USB communication and power. That was before the PICkit2 or junebug came out (2002?). It was also woefully unreliable since the USB-serial bridge hated bit banging data lines. Worked though!
Save yourself some time and buy a PICkit2 copy like the junebug, or those wonderful chinese knock-offs from ebay. It'll probably even b e cheaper than the parts and you won't have to spend days building and debugging the sodding thing.
Blueteeth