I also wanted to say that I've noticed another thing your widget does better than the stock widget - you don't remove an appointment until it's finished whereas the original widget removes them once their start time is reached (which is a pain if you're late for something!)