Grouping by day + events spanning several days
Make 2 or 3 computed view fields (which will require some php):


1field for day of event
1 or 2 fields for start time and end time dates.


You can group the View output by the first field. Then create the event time range by inlining the 2 other fields.

With these 3 pieces of info the calendar should be able to see the start and end datetimes and make a line representing the event duration.