The Chromecast does not operate over a local connection. It is actually operated 'through the cloud' - if you are controlling your Chromecast, you're sending operations to your Google account over the internet, which are then relayed to your Chromecast which is also tied to your Google account. Note that Google supports a non-cloud dependent sort-of-alternative for Chromecasting called Miracast in AOSP.
Android Wear is heavily dependent on Google Now, Google Search's voice recognition techniques. An Android Wear device cannot do anything without access to Google's services - it is far more than 'somewhat dependent'.
So yeah, both are in Google Services because they actually fully depend on Google's services.
Chromecast does have a new guest mode that allows guests to control Chromecast without connecting to Wifi network. Those commands presumably are relayed through Google servers. But it isn't turned on by default.
Chromecast does need to be connected to the Internet to download the receiver app that runs on the Chromecast. If the Chromecast could cache the app, or get it from the controlling app, it could run completely disconnected from the Internet.
Android Wear would be just be as heavily "reliant" on Google Now as Android is. Google just decided to give it a proprietary version of Android that is heavily integrated with Google Now. Android Wear could do quite a lot without access to Google Services. It is actually pretty pleasant to use without talking to your watch.
It seems like we both have different points of view on this, but in my opinion Google has acted in a way that favours their interests over their customers' freedom.
What about the Chromecast and Android Wear APIs?
I know that Chromecast OS and Android Wear they are both (sadly) based on closed operating systems and somewhat rely on Google APIs, but that shouldn't be an excuse to prevent people that don't want Google Services on their phone from using smartwatches over bluetooth or mirroring the screen to their TV in their own local network.