In general collations can be persuaded to match one another.  See my comments at:  
http://dba.stackexchange.com/questions/122186/contained-db-collation-error/122191#122191

Perhaps the comments on collation, particulary the CATALOG_DEFAULT, may provide you some assistance:

 - The database collation is retained, but is only used as the default collation for **user data**. 
 - A new keyword, CATALOG_DEFAULT, is available in the COLLATE clause. This is used as a *shortcut to the **current collation of metadata** in both contained and non-contained databases.* 

For more straightforward collation problems, such as between two databases, a sample query from that discussion is:

    select NameValue COLLATE DATABASE_DEFAULT from MyDatabase.Schema.Table
    EXCEPT
    select NameValue COLLATE DATABASE_DEFAULT from TheirDatabase.Schema.Table

The value of this approach is that you do not need to specify a particular collation, but COLLATE DATABASE_DEFAULT allows you to use the collation of the current database. This would resolve data collation issues.