I can recommend Evans & Horton Roofing. It's a small, family owned company and the owners live next door to me. Good people.
As for the stain, I've had one of those before and there are a few things to note...is it moldy? If so, you'll want to spray it with a bleach solution...maybe 1/2 bleach 1/2 water or even less bleach to water. Let that dry and see if that removes the mold. If there is no mold, you start with this step...next paint with kilz. You may need a few coats, but take the time to do the kilz a few times before finally painting with paint to get rid of the stain on the wall/ceiling. Assuming the leak is fixed, you shouldn't have the stain come back through.