Or, just find a cheap VoIP provider that doesn't verify control of a number before allowing it to be used as CID. Voip.ms lets you spoof CID right from their web based config: https://wiki.voip.ms/article/Caller_ID
The legit use cases are where you spoof a different number that's still your number. Like your landline presenting your cell number. Or a business presenting the main number for all phones.
Here's how to do it with the open source asterisk pbx: http://allanfeid.com/content/caller-id-spoofing-w-asterisk
Or, just find a cheap VoIP provider that doesn't verify control of a number before allowing it to be used as CID. Voip.ms lets you spoof CID right from their web based config: https://wiki.voip.ms/article/Caller_ID
The legit use cases are where you spoof a different number that's still your number. Like your landline presenting your cell number. Or a business presenting the main number for all phones.