What does break; do in this function?

UKHeliBob may have the answer to your problem. Loop() is actually a subroutine that is called by main() function (a function and call buried behind the Arduino IDE). So each time loop() is called, the value of Sequence is reset to 0. The Sequence++ instructions increment Sequence, but Sequence is reset on the next call of loop(). It is unlikely the switch{} can reach cases 1 or 2.

break; causes the program to 'exit' the switch{} function. If Sequence was declared as static, it would take 3 calls of loop() and switch{} to get from case 0 to case 2. Case 0, 1, and 2 will not execute in the same switch{} execution because of the break; instruction.

P.S. It is also good practice to include the default: case even if it is empty. The default case being what to execute if none of the above cases are met.