Any device can report bad battery % if you never done a full cycle or almost never do it...There is no damn Linux
Looks like stupid implementation of batt Handling
If a device browns out due a weak battery they should force a recalibration which ninty engineers simply forgot to implement.
Liio handling (power measurements, charging,...) is no trivial thing...
Any android device can have that problem too, it just needs a calibration...
However this is something different that is happening after testing Linux, remember its a hack and not a nintendo implementation, everything hacking related is as always "do at your own risk".