How to make a folder accessible with remote domain url?

The URL paths are a HTTP level concept and CNAMEs are DNS concept. This means CNAMEs cannot be used to make any changes to HTTP level mappings.

Instead, you need to add HTTP reverse proxying in your setup. Your server that hosts http://example.com, needs to forward requests arriving at http://example.com/blog/ to hosting provider Y.

This means that all user visitor traffic will go via provider X, which will fetch part of the content from provider Y.

Personally, I think reverse proxying is not a good idea in this context. I would move the /blog to http://blog.example.com and then issue 301 redirects from http://example.com/blog to http://blog.example.com.