Why can't I set radios default value (when after build is done)
The assignment of the default value doesn't seem correct. I think it should be like this:

$form['field_shift'][LANGUAGE_NONE][0]['value']['#default_value'] = 'early';


See the following questions and their answers for more information:


Programmatically set the default value for a field
Why is hook_form_alter() so messy?