NickelMenu will survive a firmware update. Since I use NM for quite a few tasks, I simply use NM to launch KOReader and Plato.
Heck, the OCP package installer default launch for KOReader using KFMon uses NM to do the launch without having to locate the .png file. Ditto for Plato.
Code:
menu_item : main : KOReader : kfmon : koreader.png
menu_item : main : Plato : kfmon : plato.png