At least WinBatch users have a quick and dirty way to convert from one time zone to another using the descriptive text of the targeted time zone via WIL CLR hosting. Finding that out was the only motivation here.
Since, as usual, you did the heavy lifting, I did see your code could be extended for operations like I do with Excel. Maybe the conversion to ObjectType() is redundant, but I have issues with Office 365 in terms of setting cell values as .Text or .Value or .FormulaR1C1 [which seemed to work here]
tz = "Eastern Standard Time" ;can be changed for testing
strDt = "2022-10-03T16:34:46.601-07:00"
objDt = ObjectClrNew("System.DateTime", 2022, 1, 1, 1, 1, 1, 0 ) ; Any valid date to keep the constructor happy.
parsedDt = objDt.Parse(strDt)
castDt = ObjectClrType("System.DateTime", parsedDt)
objTzi = ObjectClrNew("System.TimeZoneInfo")
vtDtEastern = objTzi.ConvertTimeBySystemTimeZoneId(castDt, tz)
cvtDate = ObjectType("DATE",TimeFormat(vtDtEastern, "MM/dd/yyyy HH:mm:ss"))
;just display conversion
Display(2,"Converted Date",cvtDate)
;place it into Excel
oXL = CreateObject("Excel.Application")
If oXL == 0 Then Exit
oXL.Visible = @TRUE ; change this to @FALSE to run hidden
oXL.ScreenUpdating = @TRUE ; if running hidden, change this to @FALSE
oXL.UserControl = @TRUE
oXL.DisplayAlerts = @FALSE
oXL.WorkBooks.Add()
oWS = oXL.ActiveWorkBook.WorkSheets(1)
oWS.Activate()
oWS.Cells(1,1).FormulaR1C1 = cvtDate
oWS=0
oXL=0
Exit