I don't think your understanding is correct.
In the 60s, 70s, and 80s it was more true, but nowadays Catia, NX, Creo, and the other big CAD systems are monolithic applications with extensions and add-ons (either from the vendor directly, sold as third party add-ons, or developed in house with CAA/NXOpen/ProToolkit) for doing stuff like composite design, sheet metal, various types of analysis, and a million other things.
Under the hood they're very modular with hundreds (or thousands) of shared library modules, and sometimes those modules have long histories going back to the 70s, but the UI of the 70s is long gone, and they're used like normal shared libraries, not piping around data on the shell.
Not that it doesn't happen - I'm sure some companies have old tools they haven't updated in decades - but the day to day CAD work is all GUI based.
That's my impression working at a company doing CAD translation, anyway.
In a lot of large deployments, the CAD data isn't even stored in files, but in a PLM database. For example PTC's WindChill and Dassault's Enovia/3DX.
Correct me if I'm wrong but I think PLM/PDM are storing the CAD model as "CAD databases" (basically the proprietary file-format) in a Data-Vault. So while not all CAD data is being stored in those files (meta-data for example) those old file-fomats are still in use I think.
TBH I don't have a great understanding of how the PLM systems store CAD data.
What you describe sounds about right, though. I think in some cases it really is just the original CAD file, as a binary blob, in a database, with metadata stored with it. In some cases it's more complicated, though.
Catia's V6 "3D Experience" system, for example, saves to their database by default, but allows exporting to Catia V5's CATPart/CATProduct format, or STEP, for data exchange. The catch is that some of the newer features in V6 don't exist in V5 and aren't fully supported by CATPart/CATProduct, so they have a way to export those bits "as result" instead of saving the full dataset - basically decoupling it from the parameters and inputs that created it and giving a BREP blob. In most cases the exported parts can be editted in V5 and sent back to V6, but the "as result" parts can't be.
It's different for every CAD vendor, though. A nebuluous mess of vendor lock-in and proprietary data formats.
You can also do PLM/PDM by exporting the CAD model in a neutral format such as STEP and storing that in a database.