I think title is confusing, first because "joining implicit MTA" is internal apartment logic concept, and is not what's happening here. And second because it's not an MTA that's being created by user32 initialization logic.
Another thing is that you don't need to CoCreateInstance() anything as far as I can tell, CoGetApartmentType() tells you everything already.