sudsy
2
Any attempt to visit a nonexistent page in Bubble should indeed display your 404 page.
Of course, if your 404 page itself has a Page is loaded workflow with a Go to page action, that could trigger a 302 redirect which could cause the behavior you’re experiencing.
That’s the only explanation that comes to mind at the moment.
EDIT
Oh yeah, another possibility is if there’s some JS doing a script-based redirect - either as part of a plugin, in an HTML element, or at the app level (Settings → SEO / metatags).