Como "invento" tu metodo no esta mal, pero creo que seria mucho mas adecuado usar un display manager y un window manager minimo como OpenBox, con las facilidades que este aporta.
Es decir, en lugar de logear al usuario y en su bash_profile ejecutar "startx", instalas un servicio de DM, como KDM, GDM, Slim, etc. Slim o algun otro "ligero" seria lo adecuado en tu situacion.
En la propia configuracion del DM, le configuras con que usuario debe autologuearse (KDM, por lo menos permite esto, pero me consta que algunos otros tambien), y que sesion debe arrancar (por ejemplo, OpenBox).
Esto hara que solo con encender el PC, automaticamente tengas una sesion de OpenBox (o algun otro entorno simple similar) abierta. OpenBox permite tener una lista de programas que deben autoarrancarse. Ahi pones UltraStar y lo que necesites.
Si UltraStar tumba Xorg, el DM se ocupara (normalmente) de volver a ponerlo todo en su sitio.
Esa es la idea general, obviamente habria que pulir algun detalle xD