I would guess one of the catches got broke or worn down. I wouldnt know if its a problem with the battery or the case. If you had another battery to test you could eliminate the case.
other than that.. there is always duct tape
Justin (Powerbook Medic)