I'm just curious, did you by any chance use Webmin or some similar tool to temporarily disable starting after a reboot, and then after you tried to re-enable starting at boot you found that it wouldn't? That is what happened to me using Debian Wheezy and TVHeadEnd 3.9. The only thing that fixed it was when a new version of TVHeadEnd was offered and I upgraded.
So I would suggest you check to see if there is a newer version of TVHeadEnd available for your distribution and if so, install it, and then never use any external programs to disable startup at boot. If you think you have to stop TVHeadEnd because you got a kernel update and now need to rebuild some tuner drivers, you don't. Just install the kernel update, reboot, rebuild your tuner drivers, and reboot again. Sure, TVheadEnd will not be able to access the tuners for a few minutes but that doesn't hurt anything (unless you have something scheduled to record during that period, in which case the recording will probably fail), but it should find them just fine after you have rebuilt the drivers and rebooted (note this is not required for all makes/models of tuners, so if you haven't had to do this in the past then it probably doesn't apply to you).
If there is no newer version of TVHeadEnd available, you may need to use whatever option is used in your package manager to force a reinstall of the current version. I won't say with 100% certainty that will work, but I do know that upgrading to a current version has worked for me on a couple of occasions.
There may be an easier way to fix this, but if so I don't know what it is. By the way, I don't think the /etc/init.d/tvheadend file is the problem, it always seems to look right even when TVHeadEnd won't start automatically after a reboot.