Adding TZID to DTSTART within the VTIMEZONE block is invalid
Currently there is no way to avoid adding the TZID parameter when using Props.SetDateTime. if a timezone is specificed it's automatically added. This is great in most cases however it's invalid when applied to the DTSTART value when it's within a VTIMEZONE block.
Within the "STANDARD" and "DAYLIGHT" sub-components, this property defines the effective start date and time for a time zone specification. This property is REQUIRED within each "STANDARD" and "DAYLIGHT" sub-components included in "VTIMEZONE" calendar components and MUST be specified as a date with local time without the "TZID" property parameter.
Ref: https://icalendar.org/iCalendar-RFC-5545/3-8-2-4-date-time-start.html
I've kicked a few ideas around this but in the end it's all a bunch of hacks and work arounds. I'd really hate to add a specific set of "SetDateTimeX" functions to Props and Prop but that may be the way to fix this. I'm open to suggestions and willing to submit the patch but just figured I'd post this first for discussion purposes.