Computer tech for an MSP here, sometimes I'll call clients from my mobile with the number blocked so they don't have any opportunity to call me on my own time for "just some really quick help with this small problem". That's my use case for blocking caller id.
That's also a use case for having two phones. I know that's not ideal for a lot of people, but your use case is essentially putting convenience above security.
Spoofing caller-ID is easy using VOIP (as phone scammers well know), but 911 does not use caller-ID per se. Landlines use ANI/ALI.
Its "easy" because VoIP providers are not held accountable. Force them to "KYC" and it would not be so "easy".
This is why swatters often call non-emergency police numbers instead of 911. In this case the swatter called Wichita's City Hall.
One legitimate use is a small business with multiple lines that wants to present one unified phone number to the public.
No, that's no reason to be able to spoof callerID. That's a reason to have it show the main office number. The callee should have some idea how to get back to the caller, there is never a reason for this to be subverted.
The only way I know to have it "show the main office number" is by spoofing the outbound caller id, whether this is done on the customer's equipment or by the provider. Do you have a deeper insight into the phone network, am I missing something?
The phone company is accepting calls from the PBX or whatever at the company. They most certainly could enforce that the caller ID match the main number for the office the call originates from. It's been over 20 years since I worked for a phone company, but all calls from any line were associated with a BTN (billing telephone number). There is no technical reason the caller ID could not be forced to the BTN or something similar. In that case you could always call the phone company and find out where the call originated - or at least where they send the bill for it. I guess that's the point, the phone company can identify the origin of a call for billing purposes and I think the callee should also be provided the identifying information - certainly not lied to about it.
Of course the originating network (presumably) knows the billing number, but how do you propose to enforce correct reporting across hundreds of telephone companies in hundreds of countries? Most caller ID spoofing today happens over poorly secured or fly by night VoIP networks. If the telco can send ANI of a "main office number" instead of the number of the actual originating line then so can a hacker or any entity with access to ss7. Theoretically you could block calls from numbers not served by the originating network the way many isps ignore advertised routes for ip ranges not served by a particular AS, but LNP complicates this further.