How do I deque the default stylesheet?

You did call the header twice in your page-static.php. You can remove the second call (before the_post()).

If you remove the second call of the_header(), the Stylesheet should not be delivered anymore.

<?php
/*
        Template Name: Static Page
*/
?>
<?php wp_dequeue_style( 'style' ); ?>
<?php get_header('custom'); ?>

<?php the_post(); ?><!-- this enables the page content to show up below -->

  <body class="static">

<!-- Begin page content -->
<div class="container">
    <div class="main-content">

        <div class="row">
            <h2><?php the_title(); ?></h2>
        </div>
        <div class="main-text">
            <?php the_content(); ?>
        </div>

    </div><!-- end main-content -->
</div><!-- end .container -->

<?php get_footer('custom'); ?>