I'm not sure I understand - I have a few questions.
1. Are you using DayPilotScheduler control?
2. Are you talking about a static (event rendering) or a dynamic behavior (dragging)? SnapToGrid only defines the dynamic behavior, you should use UseEventBoxes property for static snap-to-grid settings.
3. Do you mean that event with duration 1/1/2009 11pm - 1/2/2009 12am (1 hour) is visible in the first cell of 1/2/2009 as well?
It would help if you sent me a screenshot to support@daypilot.org.