I normally don't like to ask this question, because invariably the op will have an obscure, yet reasonable, requirement...but, why!!?? I suggest that maybe there is an alternate and better approach if you step back and look at what you are trying to do and why you are trying to do. Your question hints at an MSwindows-oriented mindest on how to accomplish tasks.
running an X app from within cron requires that the cron job have display permissions to the X server, through xauth, or an unrestricted DISPLAY variable. those bloated new desktop environments may have other mechanisms, but I digress, lest the rant continue.
if you need to do something custom in x11, then ~/.xinitrc is the better place to put it. I would create a background script in xinitrc that loops and sleeps, while checking for a running instance of the desired program, and if it cannot find it then it spawns the instance. jobs in .xinitrc have access to the full local xserver resources.