You can easily see the issue between March 30th and March 31st 2013, in the Month View with FIRST_DAY_OF_WEEK set to 6 (Saturday).
The month will show the following calendar:
Record a new event from March 30th to April 2nd and save it. The rendered event will span 30th-31st-01st but NOT 02nd. That's because between 30th and 31st of March Day light changed and from +100 (here in Italy) it moved to +200. That means that an hour was lost.
Every range math with a date before the change and a date after it will yield unexpected results. Eg:
I found a solution using a different implementation of DateMath.clearDate as follows:
And I had to use it on getClearStartDate/getClearEndDate of SchedulerEvent and on _findCurrentIntervalEnd of SchedulerTableView. That really clears the date from Time information.
PS: I also tried to overwrite the original DateMath.clearDate with the UTC version, but that broke a lot of things, so I believe the Scheduler's code is doing too many assumptions.