ならまだしも means "X would still be acceptable, but…": the first half names a case the speaker could put up with, and the second half the real case, which they can't. It follows a noun or な-adjective directly, or a plain-form verb or い-adjective.
、。
If it were a child, that would be one thing, but for an adult to do something like that is embarrassing.
、。
Once would be understandable, but making the same mistake repeatedly is a problem.
、。
Not knowing would be one thing, but knowing and doing nothing is unforgivable.
A noun or な-adjective takes no before it.
means "would still be better". The speaker isn't calling the first case good, only less bad than the second, so the second half is a complaint, a criticism or a protest that something is too much.
ならまだしも or ならともかく
has the same shape and often the same meaning. ならともかく only sets the first case aside; ならまだしも ranks it as more bearable than the real one, so the complaint in the second half sounds sharper.
、に2。
Being a little late would be one thing, but making me wait two hours is terrible.
、。
Price aside, the taste is good.
ともかく can set something aside with no complaint at all; まだしも can't.
With in place of なら, はまだしも works the same way on a noun.
、。
Weekdays I can live with, but work calls even on my days off are too much.