What about something like this:
function enqueueNew_styles()
{
$theme = get_theme( get_current_theme() );
if ( is_page('Home') )
{
wp_deregister_style( 'custom_page' );
wp_register_style( 'custom_page', get_template_directory_uri().'/styles/custom_home.css', false, $theme['Version'] );
wp_enqueue_style( 'custom_page' );
}
else if (is_page('about')) {
wp_deregister_style( 'custom_page' );
wp_register_style( 'custom_page', get_template_directory_uri().'/styles/custom_about.css', false, $theme['Version']);
wp_enqueue_style( 'custom_page' );
}
}
add_action( 'wp_print_styles', 'enqueueNew_styles' );
Ps. treat it as psuedocode, I just wrote it in notepad++, not tested.
btw. in the new .css files, you use the !important to override the class from the main css.