Ну я думаю что вполне себе все меняется, может даже и рандомно, но вы этого просто не успеваете увидеть. Задержки то в цикле нету. Он за десяток машинных тактов закончится, это меньше чем может увидеть человеческий глаз. Самый простой вариант - вставить sleep. Но т.к. это у вас скорее всего основной UI поток, то так делать на продакшне нельзя - надо делать отдельный поток, чтобы не фризить поток интерфейса.