I started yesterday by profiling the job execution and found nothing of interest.
As it turns out, the devil was in calling [MyOtherDatabase].dbo.fn_LocalTimeToUTC
.
For some reason (that is beyond me), there's some credentials checking going on (yes: in a time conversion function...) but if that fails, no error is returned - but also no result. Don't ask. I didn't write it.
OneOnce I decided to skip the conversion everything worked flawlessly.
I'll be wanting those two days of my life back now.