If you pick "Text", it will reload the file with "+fautotextunicode".
Apparently we are not doing anything to pick an intelligent default, it just chooses Text. So we can do better here.
If you know that leftfile.h is UTF-8, the right thing to do is choose UTF-8, and it will convert rightfile.h to UTF-8 before the diff.
I wasn't able to reproduce choosing UTF-16 or UTF-32 causing garbling.
If you go to File>Save As... what is the encoding of leftfile.h? I would guess "Text, SBCS/DBCS mode"?