They also chose to study CS on their own; I don't see the separation. Perhaps these individuals would have been mediocre programmers had they not studied CS.
Most of the great hackers I know have been hacking since they were kids. This doesn't mean studying CS didn't add anything, just that studying CS alone won't make you a great hacker. Just a Computer Scientist.
Whereas being a "hacker" has very little overlap with either programming or Computer Science. You can be a "hacker" in any number of disciplines.
If you want to be a great Computer Scientist, learn Computer Science but you'll also most likely have to learn some programming.
If you want to be a great programmer, do a lot of programming but you'll also most likely have to learn computer science.
If you want to be a great hacker, figure out what that means to you.