@sdetweil I know that parsing ics is a pita, but before I submit an issue at github, I wanted to have a quick discussion here in the forum.
When using the sliceMultiDayEvents config option the calendar shows an additional day. This is probably caused by the RRule parsing.
The code that causes this starts here
BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:Dirk Test
X-WR-TIMEZONE:Europe/Berlin
BEGIN:VEVENT
DTSTART;VALUE=DATE:20240918
DTEND;VALUE=DATE:20240919
DTSTAMP:20240916T084410Z
UID:2crbv1ijljc2kt9jclkgu5hqa0@google.com
CREATED:20240916T083831Z
LAST-MODIFIED:20240916T083831Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:1 day single
TRANSP:TRANSPARENT
END:VEVENT
BEGIN:VEVENT
DTSTART;VALUE=DATE:20240919
DTEND;VALUE=DATE:20240920
RRULE:FREQ=YEARLY
DTSTAMP:20240916T084410Z
UID:6gb19havnq6vp2qput51e5rmml@google.com
CREATED:20240916T083850Z
LAST-MODIFIED:20240916T083850Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:1 day repeat
TRANSP:TRANSPARENT
END:VEVENT
BEGIN:VEVENT
DTSTART;VALUE=DATE:20240920
DTEND;VALUE=DATE:20240922
DTSTAMP:20240916T084410Z
UID:06e9u1trbqi3jbvstvq4qqutau@google.com
CREATED:20240916T083902Z
LAST-MODIFIED:20240916T083902Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:2 day single
TRANSP:TRANSPARENT
END:VEVENT
BEGIN:VEVENT
DTSTART;VALUE=DATE:20240923
DTEND;VALUE=DATE:20240925
RRULE:FREQ=YEARLY
DTSTAMP:20240916T084410Z
UID:0ui78rk6hpcv8rmbb6nuonhmgg@google.com
CREATED:20240916T083919Z
LAST-MODIFIED:20240916T083919Z
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:2 day repeat
TRANSP:TRANSPARENT
END:VEVENT
END:VCALENDAR