There's nothing at all wrong with your test, it's just different from mine (to be perfectly honest, I didn't even read yours closely at first; I just wanted to bust out nsping).
By querying 1000 popular sites, you're really just testing the network and software performance of the three servers. Every one of those names is guaranteed to be in their cache. By randomizing the labels, you can factor the cache out of the benchmark. Does this matter much? Meh.
I agree with your performance conclusion (your ISP is fastest) with two caveats:
* AT&T's DNS sucks ass; it's fast right now, because it sucks and wants to screw up my benchmark, but 10 minutes from now it's going to go back to being nonresponsive. I'll happily surrender 50ms for consistant performance.
* The major win for third-party DNS (and the same win for running your own local cache) isn't performance; it's that it always Just Works.
No matter what Google says about 100ms responsiveness differences decreasing user engagement by 20%, I don't believe that 10-15ms is noticeable.