I think cafepress.com is advantageous because:
1) They are online
2) you don't have to order 500 shirts per order
But they do fall short in colors - no black, navy, etc.
We get shirts printed at work sometimes for events that we sponsor, BUT there is ALWAYS a minimum order of like 300-600 shirts. Some printers have different minimum orders but they all have something(meaning, no one at a time printing). They look awesome silkscreened, but that means a HUGE investment up front for buying a bunch of shirts and selling them himself- cafepress seems to print an order as they go(is this correct?)
I doubt anyone would want to shell out the $$$ for a bunch of t-shirts, even if it's only 100 at a time. Most t-shirt places need a minimum or else it's just not cost effective - kind of like offset printing, where most of the cost is an overhead. I think that's why cafepress is so popular
Just my $.02