When restoring a calendar event it checks whether the event exists by using the course ID, time, and description fields. If there are two events on the same day, this means that 'description' is the only distinguishing field.
This caused a minor confusion for me while testing (I had used the description 'x' for two events), but will cause more serious problems if we allow blank descriptions. Blank descriptions can happen particularly if calendar events are imported from another system that does not provide descriptions, so it's mainly an integration issue.
I am changing it so that the check also includes 'name'. (If you have two events on the same day/time with the same name AND description then... well... that's not really two events, is it? So hopefully that is enough.)