I've been compiling the AudioEngine branch, and I had to do away with uxlaunch as for some bizarre reason, it would not allow me to get any PCM audio.
So, I have it starting, and if I kill xbmc it will restart; Didn't like the issue where I couldn't just do 'service xbmc-live stop/start' - I'd have to kill the Xorg session, then restart uxlaunch to bring up xbmc again.
I originally setup a basic script to call xbmc within /etc/init/xbmc.conf - But found a better way, via alanwww1 post (see step 5):
http://forum.xbmc.org/showpost.php?p=748906&postcount=1
Although I did have to modify it slightly(only because I use a user other than xbmc) - But I have xbmc starting up on boot, if it crashes, then it will respawn nicely.
But I had to compile from source first - then tested out the compile using 'xinit xbmc' - I did not install the xbmc-live package, and uxlaunch - Uninstalling xbmc-live and uxlaunch proved to be more painful than installing it - I had to rebuild from scratch again.