Because of Google’s limitations (and rightfully so, on Google’s part to limit it). Any app can call the weather API on Android if they want, assuming the user has given them permission, and the app is running. Since Apple doesn’t control the Andriod OS, they have to conform to the rules of any other app on the app store, meaning they are subject to the OS stopping their watch companion app if the user never opens it (and honestly as a daily smartwatch user, no one ever opens the companion app after setup). On iOS, Apple can waive these limitations for select Apps, like their watch app, but on Andriod, they have no such ability.
In short, they can call the weather API, but it’ll only work if the app is running, which by all accounts on Andriod, as a third party app, it shouldn’t be.
EDIT: I’ll also note that having used both platforms (WatchOS and Andriod Watch), Google and Apple have taken fundamentally different approaches to their watches, in a way that makes cross compatibility difficult.
Andriod Watches are fundamentally, an extension of the phone they are running alongside, they primarily exist to give you notifications, and the vast majority of apps are calling home to the phone to have their companion app perform tasks.
Apple Watches on the other hand are fundamentally “their own device”. They receive notifications just like Andriod watches do, but they can also function entirely on their own, they even have cell radios built in. They are essentially, their own small phone, only using the companion phone as a data connection, if you don’t have a sim for the built in radio. This is not really something Andriod is designed to accommodate. They only work well on iOS because Apple can exempt them from a lot of the restrictions third party apps have, they are built in from the OS level, where Andriod watches just aren’t.
Because of Google’s limitations (and rightfully so, on Google’s part to limit it). Any app can call the weather API on Android if they want, assuming the user has given them permission, and the app is running. Since Apple doesn’t control the Andriod OS, they have to conform to the rules of any other app on the app store, meaning they are subject to the OS stopping their watch companion app if the user never opens it (and honestly as a daily smartwatch user, no one ever opens the companion app after setup). On iOS, Apple can waive these limitations for select Apps, like their watch app, but on Andriod, they have no such ability.
In short, they can call the weather API, but it’ll only work if the app is running, which by all accounts on Andriod, as a third party app, it shouldn’t be.
EDIT: I’ll also note that having used both platforms (WatchOS and Andriod Watch), Google and Apple have taken fundamentally different approaches to their watches, in a way that makes cross compatibility difficult.
Andriod Watches are fundamentally, an extension of the phone they are running alongside, they primarily exist to give you notifications, and the vast majority of apps are calling home to the phone to have their companion app perform tasks.
Apple Watches on the other hand are fundamentally “their own device”. They receive notifications just like Andriod watches do, but they can also function entirely on their own, they even have cell radios built in. They are essentially, their own small phone, only using the companion phone as a data connection, if you don’t have a sim for the built in radio. This is not really something Andriod is designed to accommodate. They only work well on iOS because Apple can exempt them from a lot of the restrictions third party apps have, they are built in from the OS level, where Andriod watches just aren’t.