For one, answers change over time. The best answer five years ago will have accumulated the most votes. The most current and correct answer will never be able to catch up with that.
Two, there's a lot of nitpicking and irrelevant point scoring. Making answers a competition instead of a collaboration brings out the worst in some people.
Three, there's an assumption that voters know what the best answer is. Because they often don't - which is why they're looking for answers - the answers with the most upvotes are the ones that look plausible. They're not necessarily definitive, or ideal.
Four - for code - the code sometimes has obvious bugs or typos. Upvotes are supposed to fix this, but clearly they don't.
Five - the mod problem, where valid questions are closed and duplicates aren't really duplicates.
I think SE would work better as a collaborative semi-wiki, or something else in that ballpark. I don't think the karma scoring does a good job - except in the very basic sense that you get some relevant answers in one place, and it's still up to you to decide which one (if any) solves the problem.
They introduced it to gamify the whole charade without any deeper thought. At the beginning they had a lot of people addicted to answering questions and displaying their points on blogs which to me always looked ridiculous.
They've got really good SEO game, and answers to most of my newbie questions when I'm learning a new language. But I tried contributing to the site for a little while... nope, it's wickedly political for all the wrong reasons and I quit before long.