I never did get anyone to pipe in with a good link for how self healing works with MSI.
I can tell you what I have found out. To enable self healing for your MSI installed application you have the MSI create a shortcut to the executable that is an Advertised shortcut. You also must have components that have Key files. These are the files that will be checked when your application is launched using that advertised shortcut.
When you launch your application from this advertised shortcut it performs a quick health check on your .exe and the supporting Key files. Unfortunatly, it does not appear that this quick health check performs version checking on the key files.
If any key files are missing then the MSI launches a full mainenance/repair function, just as if you had gone to add/remove programs and asked for a repair. This repair does full version checking on all your key files and will repair any that are the wrong version.
That is the best I can do for you. Perhaps some of the more experienced MSI jockeys can chime in with more supporting details or corrections to my findings.
Thanks,
John