Почему-то Windows XP делает загрузочную дискету DOS, хотя она вполне может загружаться и с дискеты. Тем более странно, что DOS не видит диски NTFS, а XP как раз на них и располагается.
Программа делает загрузочную дискету XP - копирует на неё ваши системные файлы. Поэтому у вас в корне на диске C: должны быть файлы ntldr, ntdetect.com, boot.ini, bootfont.bin.
Если кто-нибудь знает, как можно из Win32-программы читать напрямую сектора диска (какой-нибудь DeviceIoControl), напишите мне, и я её переделаю. Если у вас появляется ошибка создания файла, то скопируйте файлы на дискетку самостоятельно - загрузочный сектор уже скопирован.