Basically you can use (Get-Date '7:30').AddHours(-2)
pls check the below sample code. Haven't tested yet :)
$csvData = @'
VMName, backupTiming-EST
machine1-poc,07:30
'@ | ConvertFrom-Csv
$csvData | ForEach-Object {
$ScheduledAt = (Get-Date $_.'backupTiming-EST').AddHours(-2)
$Trigger = New-ScheduledTaskTrigger -Once -At $ScheduledAt
$action = New-ScheduledTaskAction -Execute "Your script" -Argument 'Your args'
$principal = New-ScheduledTaskPrincipal -UserId 'DOMAIN\user' -RunLevel Highest
$settings = New-ScheduledTaskSettingsSet
$task = New-ScheduledTask -Action $action -Principal $principal -Trigger $trigger -Settings $settings
Register-ScheduledTask -TaskName ($_.VMName + '_' + $ScheduledAt.ToString('s') ) -InputObject $task
}