How to publish content based on a Date field in custom content type in Drupal 7?
There is a patch to make the Scheduler "Publish On" date render itself as a field: http://drupal.org/node/1203958

This presents a new Checkbox called "Show Scheduling options in vertical tabs", which you can uncheck to display as a field.  Then you give it some weight so it shows up where you want it to.




It's been working for me in production for a month or so.

EDIT: Here's a better way to make this happen with both Scheduler and Rules.


Create a Rule, "After saving new content"
Add a condition of "Content is of type"
Add an "Execute PHP" action with this:

$node->publish_on = strtotime("[node:field-datefield-here]");
scheduler_node_insert($node)
Create a Rule, "After updating existing content"
Add a condition of "Content is of type"
Add an "Execute PHP" action with this:

$node->publish_on = strtotime("[node:field-datefield-here]");
scheduler_node_update($node);