if (store.FileExists(PropertyStoreFile))
  store.DeleteFile(PropertyStoreFile);
store.MoveFile(PropertyStoreFile + ".tmp", PropertyStoreFile);

2行目の処理が完了してるとは限らないのに
3行目が実行されると