Do they have importantly distinct definitions? A quick check via Google implies they're both about "unfashionable or socially inept person" or "foolish or contemptible person who lacks social skills or is boringly studious" but that's not necessarily how I view either term.
I always figured that "nerd" implied some sort of technical knowledge or scientific mindedness. Hence slashdot being "news for nerds, stuff that matters". Geek then I suppose, would be your standard comic book store customer.
Enough people use them interchangeably that it seems there is no longer any meaning. We should probably just jettison both words.
I don't know that I've observed people using the terms interchangeably, and the distinction between geeks and nerds is pretty constant - what does seem to happen is that people disagree about which label ("geek" or "nerd") goes with which category.