I wanted the same functionality as this. It seemed as though it is impossible to do this without core changes, but i managed to get it working - in a slightly different way.
Create a page template in the root of your Theme, call it themename-page-loader.php
In that file put the following code:
/**
* Template Name: ThemeNAME Page Loader
*/
global $post;
// Define the post_name and the file name of the current page
$pslug = $post->post_name;
$pname = $pslug . '.php';
// Load the TEMPLATE file in your custom directory
require_once( TEMPLATEPATH . '/views/' . $pname );
Then in your theme root, create a folder for your pages, in this example i called mine views. Inside this folder you put your page templates, just make sure the file name is the same as the page name you set in WP_ADMIN.