разве не нарушается отношение Observable - Observed? на уровне принимающего обновления вью var, в которую перемещается ObservableObject должна быть обернута в ObservedObject, чтобы враппер ловил изменения и обновлял вью
Там вроде как просто рутовая вью будет обновляться (обновит все subviews). Надо найти проект, также делал - протягивал StateObject через EnviromentObject и все работало.
в общем попробуй поменять @StateObject на @ObservedObject, из моего скромного опыта StateObject это просто контейнер для ссылки, не способный определять изменения в своем содержимом