That might be a matter of taste, but I vote for keeping it simple: no stateful page numbering, because you need to continue making the same change in outline and page references and so on.
What if you design the frontmatter and mainmatter (and backmatter?) functions so that they all can be used cumulatively (they overwrite each other’s settings), then it could look like this:
#show: frontmatter
= Preface
#show: mainmatter
= Heading
More stuff here
#show: backmatter
= Appendix