It’s because manufacturers keep inventing their own formats instead of using plain DNG, and you can only figure out the difference reverse engineering the file. Even for the same manufacturer and file type, they may change encoding details between models or firmware revisions.
There are situations where they may decrease the bit depth of the final image if there’s not enough dynamic range, there are situations where even though the file is “uncompressed” the camera already does noise reduction and essentially compresses detail in the image, and so on…