Yes. image() is a native Kirby method, so what you are doing here is fetch the first image in the file system instead of the image from your field. If you use field names that refer to a Kirby method, then you have to fetch it via the content method:
I now remember I ran into similar issues before. To be honest, this is quite annoying, since these issues don’t always appear immediately (like in this case) and they can be hard to debug.
Perhaps this is some feedback that can be considered for future improvement? I could imagine that Kirby could give some kind of notice when using names for fields that could cause collisions like this (in development mode)?
If I were you (and since I don’t see such a feature being implemented anytime soon) if you run into this more often, and you don’t like prefixed field names, then getting into the habit of always rendering your fields via the content object would be the way to go (as some people already do):
<?= $page->content()->get('image') ?>
<?= $page->content()->image() ?>
Being able to call the fields directly is just a shortcut implemented through a magic method, after all.