COALESCE will do an implicit conversion using Data Type Precedence.
The convertion from COALESCE to CASE is just the way COALESCE works (at least a part of it).
For more information on data type precedence for implicit conversion, check: http://msdn.microsoft.com/en-us/library/ms190309.aspx