An update. Looks like Apple changed something behind the WeatherQuery hourly(startDate: endDate:) method ( Documentation Link ).
My code set up a date range a little over 10 days in duration as at original implementation time it ensured the maximum hourly weather entries were returned
let forecast = try await self.service.weather(for: location, including: .hourly(startDate: startDate, endDate: endDate))
The call stopped generating the error if I ensured that the duration was no more than 10 days so it seems that Apple has started enforcing a maximum data range to return. I've not seen anything in the documentation warning about this.....