(в сторону) Не совсем понятна идиосинкразия к датасорсам

Огромного количества проблем можно избежать, если просто использовать временную таблицу с ее предварительным заполнением. Проверено - такой подход надежнее, быстрее в разработке и безглючней в большинстве случаев.
ListView, насколько я понимаю, целесообразно использовать только в одном случае - когда количество столбцов и типы отображаемых в них данных заранее неизвестны или могут устанавливаться пользователем. Именно поэтому в оборотке - listview...