one thing you can try is to set the StatusSpecified property:
SchedulingInfo.StatusSpecified = true;
But I have to agree with Dell. The best solution for this scenario is to use a file event to kick off the schedule. This is a much better way to ensure the schedule is run at the correct time.