For dogs that have a real problem with dropping on cue, but drop really well on opportunity, try a prompt switch.
A prompt switch is a technique used to change a cue to a new signal, to “switch the prompt”. This is done by giving the new cue (weak cue) first and following it with the old cue (strong cue) a bunch of times so the dog makes a strong connection between the new cue and the behavior.
Once you have paired the new cue with the old cue enough just remove the old cue. The dog may get stuck for a moment but should offer the behavior if you just wait a moment or two.