I was able to display a 404 error by using the following code in my header.
<?php
global $wp_query;
$wp_query->set_404();
status_header( 404 );
get_template_part( 404 ); exit();
?>
To break it down:
$wp_query->set_404()
: tells the wp_query this is a 404, this changes the title
status_header()
: sends a HTTP 404 header
get_template_part()
: displays the 404 template