Sprint made the top 3, however I had a really great experience with them yesterday afternoon.
First off, don't get a Palm Centro because they're pieces of crap. I had to send my less than 90 days old phone in for service because it would allow you to make outgoing calls or receive incoming calls but you'd not be able to hear the other person and vice versa. I was transferred to Palm because they are the makers and it was a manufacturing defect. After waiting 10 days I got my phone back yesterday, reactivated it, only to have it do THE EXACT SAME THING. Needless to say, I was pissed. I called up Sprint, and the CSR I talked to (Amanda) not only is having a new phone shipped out to me (so I can't get my same phone back with the same problems) but also credited me for all the ringers I had to redownload while Palm took it's sweet time and all my downloaded ringers were lost.
It was refreshing, because usually I get crap customer service from Sprint.