Why wold you pay 15-20$ for a single MAX6954 when you could just use a microcontroller and some led driver?
Maxim parts are expensive and hard to buy and often not on stock, forget about them.
You can buy proper led drivers at cheap prices , for example here's a nice 24 channel led driver :
PCA9956BTWY Once you have it, it's up to you if you use a single one or if you use multiple ones to make your overall display show multiple digits at a time instead of multiplexing them and risk having more flicker
Here's an example for 9 digits using a single such led driver .. you'd basically require 3 pins to enable digits (you'd enable 3 digits at a time , 1 out of 3 digits from each 3 digit display) and two pins (i2c communication to led driver to tell it which channels should be on or off.
You can go wide and simply add led drivers by giving each led driver a unique i2c address (this particular led driver chip can handle up to 125 devices on the same i2c bus) but for 42 digits, you'd probably use 5 such chips ( 5 x 3 x 3 = 45 digits and just leave the digits 43, 44, 45 unused).
You will still need only 3 pins to enable digits and only 2 pins for i2c
ex .. for 18 digits :
send 48 x 1 byte (one for each channel) to connect the 48 cathodes you want to ground.
send voltage on digits 1, 4 , 7 , 10, 13 and 16 (a single i/o pin connected to the base of a transistor or mosfet) and then the output of that transistor or mosfet sends power into those digits
wait some time
disable the led drivers to turn off all channels
send 48 x 1 byte (one for each channel)
send voltage on digits 2 , 5, 8, 11, 14 , 17
wait some time
disable led drivers to turn off all channels
send 48 x 1 byte (one for each channel)
send voltage on digits 3 , 6, 9, 12, 15 , 18
wait some time
disable led drivers to turn off all channels
so unless i'm too tired to think straight, you'd need a simple microcontroller with 3 output pins and 2 data pins (i2c)
Your microcontroller simply has to convert numbers to segments in order to figure out which channels to be turned on or off and enable the digits you want ... fairly simple to do even with a 1-2$ microcontroller.