If your dry cleaner is suggesting dry cleaning over regular laundering because they are unable to get the stains out, I would suggest finding a better dry cleaner. Not all dry cleaners are the same, and some are better than others.
As for the dry cleaning itself, the one I go to does not use perc, but rather uses some sort of "green power" stuff, of which I have no idea about. They are a bit more expensive though, $2.80 for a shirt compared to the $1.80 at the end of my block laundered and not dry cleaned. They have great service though, work Saturday's and some locations Sundays, almost always next day service with same day service for $1 more on each item, and offer tons of copouns like $10 off $35 or $20 off $70 for dry cleaning (not laundering). What am I trying to tell you? There are good dry cleaners out there, but you'll have to look around and get to know the people. I probably tried 3-4 before I found this one, and it is about a 10-15 minute drive away. I probably pass 20 dry cleaners on the way, but it is definately worth it.