Yes you can happily boot straight to DOS/Linux etc off a usb pendrive. Works fine, although is a bit slower thatn a CF card. Your Bios Must support this.
You can NOT boot XP off a usb pen drive, I believe.
Xp will work 'fine' off a CF card with an IDE adaptor. Yes the system/BIOS sees it as a standard IDE drive - no motherboard 'support' required. Yes the real-world speed of CF card/USB pen drives is MUCH SLOWER than any modern hard drive, but this is not a problem at all for smaller OS's (Dos is fine. Xp is not)
If you want to install XP on a CF, you need to install it on a standard hard drive first and then copy the whole lot over using partition magic AFTER you have configured stuff like turning off virtual memory. I recommend using something like nLite is strip XP before installation (
http://nuhi.msfn.org/) as you can get it under 256 meg (just).
I do not reccommend XP though, because you can not turn off writing to the drive no matter how much tinkering to do. This is why Dos or Linux are so good here - Dos basically won't write to the drive unless you tell it (mame will only for hiscores etc...) and with linux I believe you can 'mount' your drives as read-only.
I looked into XP-Embedded solely for the reason that it has a optional 'driver' to disable all writes to the drive (it makes a small ramdrive for compulsory saves) as it is designed to be able to run off Read Only drives. Howver I failed to get embedded even installed on my motherboard. (Via mini-Itx)