Hmmm, tricky. . .
How about if you move the goodmodel further into the dark region, any change?
Also, have you set POLYGON ON and then run "c_setminmax(badmodel);" for the badly lit model? (sounds odd - I'll explain if it works)
Also, any possible issues with the alpha channel of the skin, or possible shader interference?
Is the badmodel a single-UV or multi-UV skinning?