The trouble is pagename in $wp_query->query_vars['pagename'] is never set/found, so the guess for post_type always guesses the post_type as a 'post'. Thus when a page redirect is expected, the query doesn't fetch any results.