Hello jrschenk
In your for loop ...
for (int numberToDisplay = 0; numberToDisplay < 256; numberToDisplay++)
... you have ...
delay(500);
While the delay is delaying, no other code gets executed. So you need to think how long it will take your for loop to complete, and where your switch test code is in relation to the for loop.
Regards
Ray