Hello Steve!
I've nearly the same problem with collation. I've had to build a "data warehouse" from four different different databases of four systems, one of them is multilingual.
The solution slightly differs only:
SELECT ...............
FROM [DB1].[dbo].[TABLE1] as T1
inner join [DB2].[dbo].[TABLE2] as T2
on T1.name SQL_Latin1_General_CP1_CI_AS
= T2.table_name SQL_Latin1_General_CP1_CI_AS
In this case both sides of join are forced to use the same collation 🙂
I hadn't time to check the theoretical fundamentals or efficiency aspects, but in practice it's works.
Best regards: Richard