I understand not wanting to have the field on the form, the purpose is to be able to set it via rules, etc.
I do not know of a reason that the command would work sometimes, which is what I think you are saying is currently happening. I do notice on your form the Submit button does not have postback set to "always" - it would be helpful to add that.
Could you temporarily add the Error node from the Qdabra Rules data source, and temporarily change your submit button to not close on submit, so that you could try again in the browser and see if qRules is returning any error in the instances where it fails?