How to expand picture to cover entire header area? (twenty-twelve theme)

You will have to do a lot of modifications on this one.

We are going to modify header.php file

Firstly move this piece of code from header tag file to below body tag

 <?php if ( get_header_image() ) : ?>
    <a href="https://wordpress.stackexchange.com/questions/152110/<?php echo esc_url( home_url("https://wordpress.stackexchange.com/" ) ); ?>"><img src="<?php header_image(); ?>" class="header-image" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="" /></a>
    <?php endif; ?>

wrap this code in a div

 <div class="header-full-width">
  <?php if ( get_header_image() ) : ?>
    <a href="https://wordpress.stackexchange.com/questions/152110/<?php echo esc_url( home_url("https://wordpress.stackexchange.com/" ) ); ?>"><img src="<?php header_image(); ?>" class="header-image" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="" /></a>
    <?php endif; ?>
            </div>

Now add css

.header-full-width img {
 width: 100%;
}

This should do the trick.