Adding a widget to a string of HTML

If you want to add the widget area as part of the output var you need to use the ob functions because it is echoed and not returned.

Like this:

$output .= '<div id="header-image-widget-area">';
    ob_start();
        dynamic_sidebar( 'header_image_widget' );
    $output .= ob_get_clean();
$output .='</div>';