Jonny Боюсь, тут нет однозначного ответа как правильно. С одной стороны слово “генеалогическое” как бы подразумевает именно кровное родство. С другой стороны, программа при построении обычно ориентируется именно та текущего супруга, поэтому и такая разница в поведении в зависимости от того, от кого строить.
Кроме того, жизненные ситуации могут быть совершенно разные, и люди могут хотеть отображать древо исходя из своих соображений как правильно, и это не всегда подчинено строгой логике. Кто-то может предпочитать вообще исключить кого-то из древа по каким-то соображениям, кто-то указать супругом не текущего а “настоящего”, в общем жизнь крайне разнообразна, человеческие отношения очень богаты на разные сложности. Поэтому, надеяться, что программа сама будет учитывать все эти нюансы - бессмысленно. Намного проще просто отредактировать временно связи так, чтобы получить именно ту картинку, которую вам нужно для данной задачи, а потом вернуть связи обратно.