Yes you right about the battery composition. And yes, the external calib is uncalibrated now. The only thing I can do for now is the "DC generator" method calibration as I do not have formal calibrator. I have seen somewere the procedure to inject some 0.2V, 2V, etc well filtered. But as you say is fully functional now; and I'm glad with that.
The only thing I don't like at all is on grounding the input via external or with the ac/dc/gnd button shows me some -0.40mV on distal measurement. I expect 0.0 as is grounded. moving a little bit the vertical position I get the 0.0 reading but the small mark at the trace beginning is not exactly aligned with the "zero" graticle line.
I have done the "DC generator" method of external calibration on a 2440 and it was not too difficult. All it takes is a relatively low noise voltage source and voltmeter. A good linear power supply will certainly work.
Voltages of 20.00, 2.000, and 0.200 volts are needed for the vertical calibration but the trigger calibration also requires 0.2 millivolts (see below) and 0.5 volts. With a power supply as the source, it may be advantageous to use an external resistive attenuator to generate the lower voltages because most power supplies lack the kind of resolution necessary to produce an accurate 0.200 volts out of a full scale range of 20+ volts. I used a Tektronix PS503 which has both coarse and fine voltage controls and it was not good enough without an external attenuator.
I think the 0.2 millivolt calibration of the trigger can just be a short to ground and the service manual implies this. I think the reason they list it as 0.2 millivolts instead of 0.0 millivolts is that the recommended calibration generator has a minimum output of 0.2 millivolts and the difference between that and ground is insignificant as far as the calibration.
When I first did this, I had the voltages reversed so they were all negative as far as the oscilloscope was concerned but positive on my voltmeter so of course calibration failed but the oscilloscope did not say why and I wasted time doing it again and then backtracking to figure out the problem.