Ben, six years later I seem to have the same issue you had with a UNIQUE constraint. My data consists of 2 tables, a view and a temp table, quite a simple data set. I've posted this to SQL Server Central. You can get to the topic via:
http://www.sqlservercentral.com/Forums/FindPost1723690.aspx
I'm running this on 2008 R2.
I don't know if you'd still be interested. I found your thread once I had boiled my issue down to the existence or not of the UNIQUE constraint. I thought you might be interested.