IGNORE_DUP_KEY = ON
basically tells SQL Server to insert non-duplicate rows, but silently ignore any duplicates; the default behavior is to raise an error and a
Whenever there is a deviation from the "normal" in the database , you probably want to know about it.
You kept the key unique because of some constraint arising out of business need that dictated it. The database is just keeping up it's side of the deal saying that 'hey you wanted this to be unique but now you are saying something contrary. Make up your mind'
If that is intentional you can ask database to shut up by using IGNORE_DUP_KEY :)