Hi Orlando,
The current source mismatch is not random, and they will track together nicely over temperature. When using the 3-wire RTD, you can remove the mismatch by taking a measurment, swap the current sources, take another measurement and then average the two readings together.
Gain error is a problem, but can be calibrated. The ADS1248/47/46 has preconfigured FSC (full-scale calibration register) values for each gain setting. You can do a system gain calbration (SYSGCAL) by applying a full-scale signal to inputs. The result of this calibration can be retrieved as register values and re-written to the registers at power up. Generally this is not necessary, as gain error can be calibrated out with a two point calibration. The first point in determining the gain slope is with respect to zero. This value will be 0 code after issuing the SELFOCAL command (self offset calibration) at power up and these values are stored automatically. If you connect the equivalent resistance for your maximum temperature, you can calculate the gain slope based on the difference of the expected to the actual output code. The compensation values can be stored on your system (perhaps as a part of data flash on your micro), and the correction is a part of your temperature conversion calculation. That leaves gain drift as an additional error. This may require an additional compensation depending on the environment of the system with respect to temperature change.
As far as having multiple RTD measurements using a single ADS1248, it is possible. I have seen analog switches, MOSFETs and MUXes used. You would have to simulate to see if the leakage will cause issues with your measurements.
There are other considerations, in particular board layout. If you are not extremely careful with routing you can add noise and other leakage paths as well. This will affect your measurement. 20 RTDs routed to a single ADC results in 5 RTDs for every input channel. This may also create many delays as well due to switching time and analog settling.
Best regards,
Bob B