SD Cards in general are quite slow. The most commonly found cards are Class 4, which means a write speed of 4MB/s - compare that to a decent USB flash drive which is around 10 - 20 MB/s. Note that there exist Class 10 and 16 cards as well, but naturally they're much more expensive. More importantly, the card reader should be able to support those speeds as well. An even more important fact is that the *read* speed is often only just higher than the write speed, which is upto 9MB/s for a Class 6 card - which is incredibly slower than your run-off-the-mill USB flash drives. (Note that sequential read speed is around 20MB/s but you won't be seeing those speeds unless you're doing long sequential transfers, such as installing Win7 or reading other large files like movies, ISOs etc. XP install will be slow because it reads a large number of small files, which takes ages). Random write speeds are even worse - usually in order of KB/s.
Also, there are issues booting from SD cards on a lot of computers. My Dell netbook for example doesn't even see the card when it's inserted in the internal reader, however, it's able to boot off it just fine when a USB based external reader is used.
Finally, it's usually cheaper to just buy a USB stick than go for an expensive yet comparatively slower SD card. Besides, it's really easy to loose those tiny microSD cards! Imagine loosing 16gigs of stuff because it fell out of your pocket and you never even noticed it...