Why is the called shot rule cheesy? Why would missing and getting lucky be rewarded? It's a bit like the bar bangers playing behind the line rules and scratching on purpose so they player has to kick at a ball. There should be no benefit for a mistake or a foul.
I don't mind playing called shot but not called safe, but the rule that a random ball made in a miss or a safe should be handed back seems logical to me to make playing safe more skilled rather than calling a random pocket you clearly can't make it in and saying "oops I missed now you go". If they just plain miss and nothing goes in, then the other player just has to accept the layout, this way there is an opening to play two way shots and try for harder shots with less risk of a sell out.
That is really the big thing for me as an issue with called safe, it makes it too sterile of a game with almost no one attempting a half way hard shot since they know they can't attempt a safe built in or they will just get it back if they happen to miss the ball and get the safe. With a two way shot we get to play and watch some fun shots attempted that can go safe if missed. Personally, I don't play pool to just win, I play it because it's a lot of fun and a challenge, I want to try fun and hard shots to pull them off, not bunt to a rail if I think there is a 20% chance I'll miss.