In all but one of the cases where I've had questions closed as duplicates, I would have found this actively insulting. That's because all but one of those closures linked to non-duplicates, and in some cases to questions I had already singled out as not applying to my situation.
It's honestly a pretty hard to solve problem, because you're trapped by opposing forces. The sunnier the framing, the less it will sting the people asking the (numerous) duplicate questions - but the more it will irritate people who think (rightly or wrongly) that it's been done in error.
My SO experience seems to have been nonstandard, but it's always looked to me like changing labels and appearances is going to go bust because the rate of actual bad decisions and meanness by power users is too high to build trust.
That's only a win if the duplicate is real. Sometimes questions are closed when they aren't really duplicates.
This is a substantial part of the fighting over the site, though - there are lengthy guides to picking up enough Stack Overflow rep to render the site usable.
I usually see this dismissed with "just help some people and ask some good questions, you'll be there in no time", but when I talk to friends who are getting a self-taught start with programming, I consistently hear a different story. They're getting questions closed as dupes, either because they aren't experienced enough to recognize duplicate questions with different terms or because mods are squelching their genuinely novel questions. And they're new, so they can't answer hard questions - and the easy ones don't produce rep because they're inevitably closed, removing all the payouts for answering them.
I understand the logic behind the rep gating system, it's not a bad idea. But it's just fuel on the fire when things go wrong, and they go wrong a lot in the form of wrongly closed questions.
If enough people upvote the link to the originally posted question, or even if it gets selected as the answer, then SO can simply _not index_ this question. But the poster doesn't feel rejected, and can in fact choose to continue engaging in his question in cases where it's subtly different.
Sometimes the duplicate is blatant, but in many case it is really a judgment call. In my experience I more often vote for "reopen" than for "close", so there are definitely different attitudes to what is considered a duplicate.
Alternatively, it could be the decision of the one asking the question. Just as they select the "accepted" answer, they could choose to accept or reject the duplicate as appropriate.
Here's something I've never really understood: What is the downside to leaving the question up, even if it is an actual duplicate? Instead of "closing as duplicate", just answer it with a link to what you feel is the question it duplicates. If that works, then the original will score higher on Google, and if it turns out it's not a duplicate, the asker is able to provide more information as to why that answer doesn't work for them.
The asker can edit the question to provide more information and the question can be nominated for reopening. It only requires 5 votes to reopen, IIRC.
Specifically what I found upsetting its that it stopped being possible to help people with bad English or those that struggled to express themselves. On numerous occasions I'd finally extract meaning from their mis-phrased question, tap out a considered response only to be prevented from posting it because the question was now closed.
That experience was exceptionally frustrating and a downgrade from newsgroups.
If Stackoverflow wants to build this library, let mods and enthusiasts decide whether a question is worth indexing, and let the questions that would otherwise be closed as duplicate or off-topic be as they are. Perhaps replace "duplicate" with "related to indexed question #XXXXXX"?
It would certainly take a while to restructure SO like this, but with enough effort and time, lower-quality questions simply won't show up in searches unless there really isn't a better related question available.