May need to rip apart `ListItemSource`, as `ListBox` is currently recreating everything every update and there's no way to recycle the elements.