custom meta box for page default template

Maybe your problem comes from the fact that page.php is a reserved template name for default template file which should be located in the root directory of your theme and not in a sub dir such as page-templates/page.php.

You can check the template hierarchy schema here : https://codex.wordpress.org/images/c/ca/Template_Hierarchy_2015.png