Dave,
I don't think (caveat: this is all pretty new to me) it's a driver issue. I've tried to load that driver, but these systems aren't looking for a driver and refuse to load it when I point them to it. It's as if there's enough communication between the host and the PIC to recognize there is a valid USB device attached to it, but there doesn't appear to be any identification of the device coming through or information about what type of USB device it's supposed to be. I've looked in the assembler code and all the relevant ID headers etc appear to be in that, but for some reason it's not making it to the host? It's as if the host is saying "well, I don't know anything about this USB device so it's pointless changing the driver for it".
One thing I did notice was that the machine that does communicate with it has XP service pack 3 installed on it where 2 of the other machines I've tried it on don't. Could that be important?

Thanks,

Troy.