Без сомнения, что "интеллектуальное" преобразование юникоровского имени в ansi - дает имя несуществующего файла (у меня это Icon?).
Далее
MSDN.GetFileAttributes писал(а):
If the function fails, the return value is INVALID_FILE_ATTRIBUTESФиг его знает эту константу (у меня на диске ее нет) - надо полагать, просто -1
Судя по результатам.