Want to order by Meta Values (tweaking Post Order Widget)

Because price is not a post table column (I’m assuming it’s a post meta field), you need to extend the query & order by meta_value_num instead:

case 'title':
    if ( ! $meta_query = $vars->get( 'meta_query' ) )
        $meta_query = array();

    $meta_query[] = array(
        'compare' => '!=',
        'value' => '',
        'key' => 'price', /* This should be the name of your meta field that stores price */
    );

    $vars->set( 'meta_query', $meta_query );

    $orderby = 'meta_value_num';
    $order="ASC";

    break;