Daemon created with QtService is not launchd compliant.
When the daemon created with QtService is started, it runs fine, but it can be seen in the syslog that launchd thinks it exited with code 252 and restarts it. 252 is -4 and is the code the application returns if the service cannot be started.
QtService does exactly what the Apple documentation says cannot be done in a daemon anymore, i.e. fork and exit.