I've actually reached the same conclusion at about the same time. My issue (and my educational take-away) is that I wrote it based on an input/status screen that calls functions starting with a javascript function attached to the "start" button. . Since all of those functions are self contained and can be invoked, and all of the inputs are known (or can be read from a table), I can remove the U/I and replace it with a controller that does the invokes using straight CF code.
The other issue I will have to address when I'm looking at my code is to ensure I don't have any SESSION variables.
My basic misunderstanding was that scheduler was server-side only. I was thinking that it emulated a browser.
I thank you for your help and patience.