Receiving push notifications from iCloud on Apple Watch
The problem might be the following:
A silent push notification is indeed handled by watchOS, but only very rarely and pushes may be dropped. The docs say:
The system treats background notifications as low priority: you can use them to refresh your app’s content, but the system doesn’t guarantee their delivery. In addition, the system may throttle the delivery of background notifications if the total number becomes excessive. The number of background notifications allowed by the system depends on current conditions, but don’t try to send more than two or three per hour.
When a device receives a background notification, the system may hold and delay the delivery of the notification, which can have the following side effects: When the system receives a new background notification, it discards the older notification and only holds the newest one.
So iCloud pushes are not really suited for updating a complication.
If one does not use iCloud but a separate server, one can use PushKit to update complications. I find it strange that Apple did not implement this (yet?) for iCloud.
See also my question & answer here.