Странный Data Flow… Обычно .onApear используется для первоначальной установки View( например, установить selection в List при появлении), асинхронной подгрузке данных. Попробуй реализовать с помощью data model на основе ObservableObject. Если тебе нужна подгрузка данных по мере пролистывания, то вроде как это в сторону Lazy Stack, возможно в паре Geometry Reader, но это не точно)