I automatically generate a WiX file for my installer based on a directory (it\'s for a web app), and it includes references to the following 3 .Net assemblies:
As the linked question suggests, you can try to re-schedule RemoveExistingProducts so that the old product is removed before any new files are installed, like this:
Another option is to modify REINSTALLMODE property, and replace e mode with a, that means its value would be amus. This way all the files will be re-installed, the operation would take longer but rather more reliable.