Если в страницы есть явный деструктор, этот обьект помещяется в специальный список для финализации, и он в любом случае пропускает тогда одну итерацию сборщика мусора. Это с того что помню, для деталей, стоит соответствующие статьи почитать. Попробуйте 10 раз на одну и ту же странцу позаходить, а потом просто по програме поделать навигацию, чтобы память ушла немного и GC вызвался. А, есть еще нюанс, что кроме Minor Heap и Major Heap есть еще LOS (Large Objects Space). Если ваш обьект туда попадает, то он будет жить очень долго, может даже вплоть до конца жизни процесса. Могут быть еще некоторые различия в зависимости от типа реализаци GC (в Xamarin ее можно менять, как минимум на Android). Важный еще момент, GC на .NET и GC на Mono - очень, очень разные вещи. Вот статья про то как работает GC в Mono:
https://www.mono-project.com/docs/advanced/garbage-collector/sgen/working-with-sgen/