In general no, but not always. But I think that's the wrong question to ask, really, because a Phd is certainly not about programming at all, except in a few rare cases. The real question is why you want to do a PhD, and why do you think you will be better than the thousand of other people who also want to do a Phd in the best universities.
I can tell you that professors will glady put your email/letter in the trashbox as soon as they see "I want to work with you because you are a professor at Cornell, MIT, etc.." or something with the same underlying meaning. When you say you want to work for the top university, that's a big red flag right there for any professor. Of course you want to do your PhD in the top university, everybody wants to. You need to say why you think you are a good fit for this professor, with your topic of research.
Note also that trying to do a PhD under a famous professor is actually not that a good idea, especially if you have never done any research before, and if you are a foreigner. Most of them are so busy that they will have no time to spend with you at all (I have witnessed grad students working with one of the top professor of my field, they cannot meat him one to one more than once a year). It is much more important to go along with your professor, assuming of course he has a minimal level (check if he is still publishing in the top conferences, for CS), and to be close to what you want to do. As for why foreigner matters: you will face more difficulties than other (housing, etc...), and the more famous/important the professor is, the less chance he will be able to help you.