for the very same reason that /sys/class/dmi/id/board_serial, chassis_serial, product_serial and product_uuid are not readable by user
exposing directly /etc/machine-id is hence a major privacy concern
Note: Windows expose these HW id:s without constraints whereas Linux puts some limitations.
Right, and macOS also exposes a hardware ID. Windows/Mac applications should be equally careful with that information. I don't think exposing /etc/machine-id is at the same level though. It's not a hardware ID and you can change it. If privacy is a concern when running Windows applications an alternative would be to sandbox Wine and give it its own machine ID.