Extend the Scheduler module forms
If scheduler is using hook_form_alter() on a form, and your module is also using hook_form_alter() on the same form, the order of execution of these two hook_form_alter() functions matters. Evidently, your module's hook_form_alter() is getting called before scheduler can add the new form elements you're trying to modify.

Drupal executes these hooks in order of module weight. If you do not set the module weight, then I believe they all default to the same value and hooks with the same weight will get called in alphabetical order (but this is not guaranteed).

To ensure that your module gets called after scheduler, you need to set your module's weight to be greater than the scheduler's module weight. This is how you do that in your module's install file:

/**
 * Implements hook_install().
 */
function my_module_install() {
  // Because we need to alter a form that is also altered by the scheduler
  // module, we need to ensure this module gets loaded AFTER the scheduler.
  $weight = db_query('SELECT weight FROM {system} WHERE name = :name', array(':name' =&gt; 'scheduler'))-&gt;fetchField();
  db_update('system')
    -&gt;fields(array(
      'weight' =&gt; $weight + 1
    ))
    -&gt;condition('name', 'my_module')
    -&gt;execute();
}