Yes, you can create a container directly on a USB storage device. From the OS's point of view a USB device is just another block device and can be treated the same way as a hard drive.
The speed of creating a container will depend on a number of things - assuming you want to use the full 250 gigs, it will take a very long time, both because of doing the encryption [ this will depend somewhat on the type of processor and speed of it - probably faster if realcrypt can take advantage of AES instructions and your processor supports it ], but I'd imagine the biggest overhead will be writing to a 250 gig external drive. You are looking at hours or possibly days to fill it - depending on the drive and connection speed. I imagine this would still be faster then creating a container and copying it across - particularly if its the full size.
Its also not clear what you mean by "using the block device directly". While you could put it on the raw block device, you may be better of making a partitition (using fdisk or similar) and using that. In that way it will be accessible from other OS's.