Have you also looked at the Change Feed functionality in cosmos db? Its also available for mongo db:
https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/change-streams
Change Feed captures changes made to your data in the order they occur. These changes can be insert, update or delete
Set up a process that reads from the Change Feed and applies these changes to your MV. This process can be running on a scheduled basis or triggered by events, in your case, you can use a function here.
This is slightly different than the approach you want with on demand MV though.
P.S. For change streams API, you need version 3.6 or higher.