The issue is reproduced only when the items in the source collection have properties with duplicated values and they are sorted before the selection is processed. If the property values are unique or the SelectionMode is set to Multiple, the selection works as expected both with sorted and unsorted data. The workaround is to use either Multiple SelectionMode, or Cell/Mixed SelectionUnit.