sfi.dat can be deleted out of windows.old.
I ran across the same problem. Only trouble is that afterwards, I couldn't go a sysrestore bacause sfi.dat couldn't be found or some such message.
Here's how i deleted:
Created a Computer Administrator account:
either use secpol.msc or
as a normal administrator go to a command prompt and execute:
NET USER ADMINISTRATOR ENABLE
after doing the above then thru the control panel |user accounts you can create a posssword for that COMPUTER ADMINISTRATOR account.
Boot up again and choose the computer administrator account to login in
then shut down your computer.
Boot up again but this time tap the F8 key frequently until you a screen which willl let you go to SAFE MODE.
Once in safe mode, Choose the COMPUTER ADMINISTRATOR account.
Run CMD.EXE as an administrator
using the good old faithful dos commands, navigate to the files in windows.old which you couldn't remove, Delete with the good old DEL command these offending files, Delete all subfolders, folders till you finally get rid of windows.old folder.
exit from the command shell (type EXIT and hit return).
restart your computer.
Due to the problems I have trying to perform a system restore since then, I'm going to once again uninstall CIS, reboot the system, install CIS and then see if I can successfully create a restore point and perform a system restore to the created restore point.
That's tomorrow's job as must run now. Will post the results of my labors later as I've no desire to reinstall Win 7 RTM and all of my everyday software again.