I figure that a quick exchange takes about the same time as explaining he's a dupe. So (especially this time) I just did what Bob said: work the dupe and move on.
I also vote for leaving in the log. The checker will remove it. (Sorry David.) Technically, it IS a QSO--it's not like it didn't happen. It's just a QSO worth zero points in the contest.
I think I have six or seven in the log so far this weekend.