I would try this on a test board if you can, but here's my dev test of it back in September running XenForo 1.4.1. It's been working and the test user has never been demoted since:
Promotion Options:
Apply This Promotion While...
Promotion history as proof:
I can manually run the cron and everything works, the user is offline and doesn't get demoted. I even removed the add this user to registered users checkbox, saved it, and manually ran the cron again. Still works, no demotions.
I also rebuilt the User Group promotions and manually ran the cron again. My test user is still apart of the "Steam Yay!" group as well as the registered group.