While I personally can't stand being labeled (cultural identifiers of any type are just discrimination waiting to happen), I would like to bring in some etymology to the discussion:
A "Geek" used to be a circus performer that usually performed an extreme antisocial act, such as biting the head off of a chicken. It now seems to refer to anyone who is obsessive about their interests, which often include technology and other 'intellectual' topics.
"Dork", besides being slang for a penis, generally is used for socially inept people that probably can't really help that they act like a dick. They are often considered the least intelligent among the Geek/Nerd/Dork labels.
"Nerd" tends to refer to people who pursue their intellectual or esoteric interests in favor of social interests. It came into common slang usage in the 50s, referring mainly to people who were not athletic or otherwise 'square'. They still have some social skills, but use them more sparingly. A prime example would be the original portrayal of Peter Parker in the 60s.
It seems there are 2 variables that come into play: intelligence, and social awkwardness.
"Geek" would be a highly specialized, obsessive intellectual with minimal social skills. (INT+2 CHA-2)
"Dork" would be a socially inept, but smarter than average douchebag. (INT+ CHA-2)
"Nerd" would be more well-rounded, with a mix of book smarts and a bit of social ability. (INT+ CHA-)
That said, I'd probably be a nerd.
/capeswoosh