One step to make sure your Windows Installer setup will work properly is to perform validation of the .msi file. Microsoft has published a collection of ICEs (internal consistency evaluators) for this purpose, and third party tools vendors provide additional ICEs. You could even create your own.
When those ICEs are executed, they scan the MSI database for entries in database records that are inconsitent and might cause incorrect behavior in the context of the whole database. In some cases they also try to predict unintended behaviour and issue hints for improvements.
ICEworks from ZettaServe is a tool that claims to correct Micrososoft ICE error and warning messages in an .msi file automatically. It can either modify the .msi file directly, or write the modification to a transform file (.mst). ZettaServe is an Australian IT company that also offers software packaging services. ICEworks was created to compliment their internal packaging process.
ICEworks is currently in beta, registration is open until 10th July 17th August (Edit 9th July: beta registration period extended). The licensing model has not been announced yet.
ICEworks website