Время создания файла - это количество секунд, прошедших с 0 часов GMT 1 января 1970 года. Соответственно, если меняется временной пояс (не локальное время, а именно пояс!) компьютера, то то же самое количество секунд означает разное время.
Про винды - не знаю; может быть, там просто записывается абсолютное (а не относительное) время.
UPD: Хотя логичнее было бы, возможно, приводить это время к GMT, а затем пересчитывать в локальное время.
UPD1: Хотя это спорно. Так фиксируется именно "момент" создания файла (а вот время этого момента в разных часовых поясах разное), если пересчитывать же - момент будет "плавать". Кстати, именно поэтому, например, DHCP leases считается только по GMT.