It's pointless to try to debug code that uses millis() and delay(). Pick ONE method and stick with it.
float intensity = MaximumBrightness /2.0 * (1.0 + sin(SpeedFactor * m));
sin() takes a value in radians. One would expect this loop to iterate such that the argument to sin() ranged from 0 to pi or 0 to 2pi. Iterating so that the values range from 0 to 10 doesn't make sense.