Core component of SQL Server for storing, processing, and securing data
That does not sound exactly normal.
Although, the description for ENABLE_VERSIONING says:
Occurs when SQL Server waits for all update transactions in this database to finish before declaring the database ready to transition to snapshot isolation allowed state. This state is used when SQL Server enables snapshot isolation by using the ALTER DATABASE statement.
So when you say that there is no IO, is that on the server in general or only for this session? And if the database is in SINGLE_USER, there cannot really be any update operation pending... Or could SINGLE_USER be the problem and preventing that update from complete? The update could be a log redo or similar. SINGLE_USER is not required for ALLOW_SNAPSHOT_ISOLATION.
I would also run DBCC CHECKDB just be sure that there is any corruption.
What you could try on SQL 2022 is to first enable accelerated database recovery. This will also enable versioning, but with the version store in the database. (This feature is not available on SQL 2017.)