Why is this that much works if you do generate everything in UTC and set the timezone like this :
DTSTART;TZID=UTC:20190101T090000
in the ics ?
If you don’t handle the TZ in UTC it means that if the person is travelling she is going to have her calendar event in the TR defined TZ,
I wish I could try to apply for dev job if I was not located outside the US