umm... Windows can boot off a USB drive. It takes a bit of massaging. You cannot install Vista/7 directly onto a USB drive, but if you install the USB drive's internal HDD via IDE/SATA you can then install it, put it back in the USB enclosure and boot off of it. With a flash drive, you'll need to find another way.
I tried Vista off USB flash drive before. It was an image of Vista off an HDD. It involved updating the MBR, GUID and marking the partition as active. I haven't tried XP, but remember my buddies back in early XP days how they were so thrilled with XP on USB flash drives. So XP might be easier.
XP off flash drive had terrible write speeds and major stuttering, especially since back then RAM was usually a sub 1GB world. I'm sure now with enough ram you'll get less stuttering, but it'll still be there. Just make sure when you create the partition that it is aligned.