Посмотреть вложение 572750
Добавил в шапку директиву
Посмотреть вложение 572751
И упростил условия
Посмотреть вложение 572753
В этом блоке Вам нужно было просто заполнить буферы, а терминал сам разберётся, где значение больше, а где меньше.
У Вас же было поставлено ошибочное условие, в котором при пересечении вы сами(!) переворачиваете буферы, в результате чего один буфер всегда выше другого. Оттого и одного цвета.