That would be the same with any platform that does not use some kind of explicit linking/sharing of resources. Snaps have a sharing mechanism called interfaces but yes, the software author has to declare they want to use it, no magic there.
So, they've reinvented dependencies (though, to their credit, they gave them a different name), one of the very things snaps were intended to alleviate?
Look, don't get me wrong, snaps have some interesting advantages (sandboxing being the one major selling point, IMO). But, again, they're no panacea.
Just like docker, snaps make sense even if there is some duplication of the libraries. Other benefits outweigh the extra size.