When screenmode prefs opens, it reads in the current modeid from the publicscreen as the default, and then reads the prefs set modeid to display.
The list appears to get correctly updated (the following Gadget2Prefs call shows correct values) - however the "mode" list in the GUI does not visibly show the active item is selected in any way.
fixed in r54733