It doesn't always contradict. But in some cases it does because of the changes in language and culture.
Classic example (see many threads in Debates on Homosexuality) Corinthinans 6:9. The Greek word 'arsenokoites' has been translated in a number of ways- the original KJV puts it as 'effeminate' (as you are doubtless aware!

) but later versions translate it as 'homosexual'.
But going back to more contempory sources it appears that the word, whilst certainly describing wrong-doing, has nothing to do with the modern idea of homosexuality. Rather, it referes to a more economic sin- possibly sexual, i.e. bribing people into having sex or using economic coersion, but not freely consentual relationships.
(
http://clgs.org/5/5_4_3.html)
But many would say "No, the Bible says 'homosexual', so that's what it means!" without even
considering the possibility that 2,000 years and several translations might have resulted in a bit of linguistic drift....
Oh, and 'witch' in the Old Testament. The original word refered to those who made and used potions. In King James' time witches were believed to do this as well. But there wasn't the spell aspect of it, so much, in the OT versions.
But now there are some who think that 'witch' in the OT refers to Wiccans.
Not just neo-pagans- specifically Wiccans.