Определенный вами алгоритм называется расстоянием Левенштейна. Быстрый Google подбрасывает несколько библиотек и рецептов Python для его расчета.
Взгляните на следующие макросы:
Существуют также соответствующие методы CListViewCtrl
и CTreeViewCtrl
классы обертки:
Можно также хотеть смотреть на CCustomDraw WTL:: OnItemPrePaint (это - то, если необходимо управлять рисунком отдельных объектов),
Хорошая статья, которая описывает этот процесс, здесь
Это было некоторое время, так как я имею, используют win32 API непосредственно, но я полагаю, что при обработке сообщения WM_ERASEBACKGROUND для управления можно использовать FillRect () в обработчике для рисования фона с помощью любого цвета, который Вы любите.