I'm using ListGetFormIndex the same way you are, but for something different, and it works.
set iFormIndex to ListGetFormIndex rWeaponRepairList rBaseInvObj
According to the FOSE docs, GetParentCell returns a base object, so yours should work too, I would think. I know that ListGetFormIndex always returns -1 when searching for a reference in a list, but that shouldn't apply here?
Edit: HugePinball posted something in this thread that might help:
http://www.gamesas.com/index.php?/topic/1079066-saving-formlists/page__p__15717978__hl__listaddref__fromsearch__1entry15717978