Node loses title on submit
Found the solution in case anyone else ever has this issue:

    drupal_add_css(drupal_get_path('module', 'tasker_project') . '/tasker_project.css'); 
    global $user;
    module_load_include('inc', 'node', 'node.pages');
    $node = (object) array(
        'uid' =&gt; $user-&gt;uid,
        'name' =&gt; (isset($user-&gt;name) ? $user-&gt;name : ''),
        'type' =&gt; 'tasker_blog',
        'language' =&gt; 'und',
    );
    node_object_prepare($node);
    $form_state['build_info']['args'] = array($node);

    $form = drupal_retrieve_form('tasker_blog_node_form', $form_state);
    drupal_prepare_form('tasker_blog_node_form', $form, $form_state);
    $form['hidden_project_id'] = array(
        '#type' =&gt; 'hidden',
        '#value' =&gt; arg(1),
    );


I used drupal_retrieve_form and drupal_prepare_form and everything seems to work correctly now. Not sure why drupal_build_form or drupal_get_form don't work correctly.