this may be 2 separate issues.
1.) the GUI may have a bug, we'll look at that asap.
2.) when you retry from the command-line, you will also need to retry 1 or more subjobs (if the job has no running subjobs) so that there is a running subjob to service the pending frame.
As you've found, work is designated with a colon ":", like "300:5"
Subjobs are designated with a period ".", like "300.1"
When you retry in the GUI, it's does some work behind the scenes to determine whether it also needs to retry 1 or more subjobs; it will automagically retry 1 subjob for every retried frame, up to the job's cpu limit.
The command-line doesn't do this; the command-line provides a lot more functionality than the gui, with the downside being that you have to tell it to do everything - it makes no assumptions.