Да с чего это не так? Она работает как и должна. Destroy вызвался у фрагмента - вью модель сдохла. Но когда фрагмент добавили в бэкстек дестрой не вызовется и тут уже нужно завязываться на onStop чтоб сделать отписку от источников во вьюмодели.в этом она кар раз завязана на жц фрагмента
Не нравится такое поведение = не добавляй фрагмент в бэкстэк, зачем велосипеды) popUpTo/popUpToInclusive