These batteries can indeed be an expensive pile of junk. I have never seen a laptop battery which lasted more than a few years before losing most of its capacity.
But it should be no worse than that.
What helps is to let the battery discharge pretty well, before charging it again. This is obviously not exactly what one wants to do when flying with the unit (one will probably top off the charge before the trip) but it makes them last a lot longer.
OTOH you might have a defective charging circuit in the GPS.