This assumes that the installer can be modified to execute `HKLM\System\CurrentControlSet\Services\pe-puppet\ImagePath
"C:\Program Files (x86)\Puppet Labs\Puppet Enterprise\sys\ruby\bin\ruby.exe" -rubygems -C"C:\Program Files (x86)\Puppet Labs\Puppet Enterprise\service" "C:\Program Files (x86)\Puppet Labs\Puppet Enterprise\service\daemon.rb"` It doesn't appear that WiX supports this option directly in either the [`ServiceInstall`](http://wixtoolset.org/documentation/manual/v3/xsd%5Cwix%5Cserviceinstall.html) or [`ServiceConfig`](http://wixtoolset.org/documentation/manual/v3/xsd%5Cwix%5Cserviceconfig.html) elements. If it's a matter of just setting the `ImagePath` registry value, then could you create a PR for `puppet_for_the_win`? You'll also want to remove the `daemon.bat` references:

https://github.com/puppetlabs/puppet_for_the_win/blob/master/wix/puppet.wxs#L152-L153
https://github.com/puppetlabs/puppet_for_the_win/blob/master/wix/puppet.wxs#L173-L174
https://github.com/puppetlabs/puppet_for_the_win/blob/master/wix/puppet.wxs#L194-L195

and change the service's KeyPath to `daemon.rb`