Module Error for some content types but not for others
You're making an assumption and that is that

$info['widget']['default_value'][0]


Will always be an array. My guess is that for some fields (depending on configuration) that $info['widget']['default_value'][0] will be either NULL, FALSE or a scalar value.