I think part of the problem (and great discussion point to keep a thread going) is the OPs limiting it to the three categories, because, well, duh, it’s never quite that simple, even if we agree (and we don’t) on the same definitions. So first, to address the OP’s picks, and sticking to only the three choices:
Robin Hood: Hero, although I’m sure in one of the many recent reboots there’s one grimdark enough to be an anti-hero. 
Shrek (1): Anti-Hero, his motives are entirely selfish, and while he grows enough to care about his friends, and take action on their behalf, that’s still acting on behalf of a very few, even if it benefits the many. To quote the Pirate King of Gilbert and Sullivan, “But, hang it all! you wouldn’t have us absolutely merciless?”. You can care about others without being a hero, see countless villains who have semi-unconditional love for family, close friends, pets, etc. But Shrek isn’t actively trying to bring harm to others, so of course, not a villain.
Khan - Villain, even in first appearance, although many quibbles about justifications (both on Earth and Enterprise) and nature vs nurture (both of which doom him). And far more so by his second appearance, with the actions he takes against his own people.
Sherlock Holmes - Hero. Doing the right thing (stopping criminals) for both the right and wrong reasons doesn’t diminish his actions IMHO.
Professor Snape: Villain, but in the redemption arc. Probably fits better in one of the “other” categories, but again, sticking with the OP…
William Munny (from the film ‘Unforgiven’): Villain, who failed his redemption arc. Honestly, I’m torn, and wanted to give another answer, but from his own admissions in film, he was a villain, and knew it. He actually succeeded apparently (off-screen) in his initial redemption, winning the love of a good woman and the “happiness” of a normal life. But Unforgiven is an incredible movie because of how it subverts the “happily ever after”. Unforgiven is what happens after the happily ever after of some other western. Munny is desperate, and when push comes to shove… he caves. Sure he justifies it, and there are LOTS of said justifications both noble and not, but … he caves.
The Joker: Villain, albeit one of the most perfect iterations of Villain by Insanity, it doesn’t change what he is, just why he is.
Draco Malfoy: Boring, oh wait, that wasn’t an answer. Villain. He has the disadvantages of being raised in a horrible situation, but no, he’s a villain, though one who accidently helped bring about a positive result. An opportunistic last-minute change of loyalties does not change what he is (and screw the postscript).
Seriously though, if I were able to answer with villain protagonists, failed heroes, heroes by necessity, and all the others flavors, I’d have more fun answering.
A related theme to the OP that I’d like to ask of the others, is what common characters do you consider the best examples of the three categories?
Hero - Superman. Granted, there are a metric ton of different versions over the years, including plenty of antihero versions, the essential Superman works for the common good, refuses to compromise their (high) morals, and while not always 100% selfless, they’re probably closer to that percentage than 99.9% of most humans.
Antihero - Elric of Melniboné. He’s the protagonist (so we don’t have to worry about @miller nixing him), and unlike some, isn’t so damage that he doesn’t understand morality. But the simple act of living his life as a vaguely functional individual is based around the destruction of others, means he’s far closer to a villain than he wants to admit. Despite it all though, he accomplishes a great deal of good, in terrible circumstances, and his actions, despite generally good motives, brings a great deal of death and despair to good and honest people as well.
Villain - to honor the OP, let’s pick the worst villain of the list, The Joker. Perhaps because he IS utterly insane, he’s a lot more willing than most modern villains (who often borrow heavily from anti-hero tropes and justifications) to be evil to everyone, regardless of age, gender, sex, and innocence. In fact, in his twisted actions, he seems to even have a slight preference in many iterations for hurting the best, brightest, and most innocent.