theming nodes as forms - any advantage using drupal_render?
Using the Form API instead of doing things in the theme layer (rendering the node as a form) will give you all the advantages that the Form API has to offer (e.g. custom validation, submit handlers, form alters, etc.)

I would do things differently by creating a menu item with drupal_get_form as the page callback and the node as the parameter.

/**
 * Implements hook_menu().
 */
function example_menu() {
  $items = array();

  $items['custom/%node'] = array(
    'title callback' =&gt; 'node_page_title',
    'title arguments' =&gt; array(1),
    'page callback' =&gt; 'drupal_get_form',
    'page arguments' =&gt; array('example_custom_form', 1),
  );

  return $items;
}

/**
 * Form constructor that takes a node as a parameter and creates a form based
 * on its values.
 */
function example_custom_form($form, &amp;$form_state, $node) {
  $form['#node'] = $node;

  // Start generating the form...

  return $form;
}


Although subjective, this feels a little less hacky and might be easier to maintain in the future.