There are many good questions on Stack Overflow. But sometimes the accepted answer may not be the best answer. Anyone who has a better answer to a question may be discouraged from putting down his answer since there is already an accepted answer. Would it be better for the community to encourage new answers to old questions that may deserve better answers?
I don't really understand the basis of your question. 'Should a Previously Accepted Answer be Voided by a New Answer?' implies that you want any new answer to a question to void the existing accepted answers. This seems like a mistake, since it would allow a spam answer to remove a useful answer...
Your premise seems to be a desire to encourage new answers on existing questions. There's already a way of doing this through the bounty system. If you don't think the answers on a question are of sufficient quality, you as a member of the community that feels that way, can offer a bounty on it. This raises the profile of the question for a period of time and encourages people to actively add new answers to it, particularly if you explain the reason you've offered the bounty in the comments on the question.
For starters, there are badges like Revival and Necromancer to reward new answers to old questions. Those badges are pretty self-explanatory.
Additionally, the community already shows support for posts through votes, and better answers will naturally receive more upvotes than not-as-good answers. Answers that are especially outstanding versus the accepted answer eventually get rewarded with the Populist badge. This all makes up quite nicely for the fact that there's no way to change which answer to a question is accepted unless you were the one who asked the question.