This exact same scenario happened to us a few weeks ago. We are on 6.1.3.0
Made a change to a walled garden net destination, and pushed the change and it restarted all 14 local controllers at every one of our sites.
Then in that same netdestination, it had duplicate entries of the same IP/host and I couldn't delete them. So I figured what the heck I'd delete them all and start over. Nope, even after removing the walled garden from the guest policy I couldnt delete the netdestination as it was 'in use'.
What I found was, that if I created a netdestination with both IP address hosts and named hosts, thats when it got borked up. So I made a new netdestination with just names, reapplied it to the guest policy and then pushed the config, all good. If you need names and IP's for your walled garden, just break them up in to two different netdestinations and apply both to the whitelist.
I did work with TAC on this, they said it was fixed in an upgrade but I didn't feel like upgrading at the time.