Best answer by GO PHO
So I think I've figured this out. The weather on the watch relies on you having the weather widget on your phone on your home screen.
I use the BBC weather widget not the pre-installed one so it was not in use.
If I add it to my home screen the weather is now accurate. The frequency that it updates in set by the app on your phone. To get it to force updated on my watch I restarted it after putting the weather widget in my home screen and now the weather is correct.
Not sure if this is a bug or just an unintended consequence of not using the default weather widget.