Using the init states might kill more than the Xserver, as any other things that take place only on higher init states will also fail to launch. I used to know more about these processes when I used RPM based distros, so I'm rusty here. And, while I'm not sure of this, LinuxMCE may add more wrinkles to the mix.
Another thing is that, if I am recalling correctly, Ubuntu/Debian based distros set up init states differently than their RPM counterparts. I haven't used init states to control the Xserver since switching to DEB based distros as a result. I think your second suggestion of killing KDM may be the more productive route.