I've never been anything but lied to by AT&T reps, either in the store or on the phone. The only time I've ever had anything satisfactorily resolved is when my complaint (pre-iPhone account activation) was booted up to a manager because I threatened to cancel the account and return all the equipment, including the BlueTooth headsets and travel/car chargers I'd bought.
What had happened was that I wanted to move from Verizon because of the better BlueTooth phone options, but I very specifically stated to the AT&T (then Cingular) rep that I needed the international roaming package immediately available or I would not open the account. He got on the phone to customer service for a while, told me that it was all approved, and I just had to call in to activate it once the account was open. Yes, alarm bells should've been ringing loud and clear, but I stupidly took him at his word.
Of course, when I called to activate international roaming, they told me I had to wait 6 months (as is the standard practice with all cell providers). I went back to the store looking to open up some new orifices, but my rep wasn't there. The other reps couldn't help, but put me back on the phone with customer service. I told them that I had all the kit I'd purchased with me and it was all returnable, which I would do along with cancelling the account because as far as I was concerned, this was fraud. This kicked it up to the aforementioned manager who was very polite, apologetic and helpful. She activated the international roaming feature.
I was leaving the next day for foreign parts so this was important. Of course, when I got there, my phone didn't work. I had access to a computer so I emailed the manager who was mortified. She had my phone working the next day.
The switch to the iPhone was fine because that was via iTunes. However, I needed the global data package for the same reason I needed the international roaming package before. AT&T added it to my account, then slapped me with $600 of international data charges the first time I went out of the US. I complained, they fixed it by returning the charges and reconfirming the global package. Then I went abroad again, this time it was only $400 in charges. They fixed it, again. I went to Brazil last month - this time it's only $300...
AT&T sucks harder than any other vendor I have had the misfortune to do business with.