Turns out you might as well just
return site()->visit('application/' . $segment_1);
According to the comments, visit() sets the currently active page and returns its page object. The difference is if you check $page->isActive() when using the page helper, it returns false; while it returns true using $site->visit(). But don’t ask me why.
I guess @lukasbestle can enlighten us 