On 2012-06-07 "Rogers, Michael K"
I played with your example a little and rooted around in grph-trf.mkiv. It seems "max" selects how to scale based on which dimension in the original figure is greater. Oddly, the dimensions of the MP figure are 142.26682pt by 142.2377pt. So I suspect that "max" is selecting the width as the dimension to scale to the specified width=3cm in your case. (Change the height of the MP figure to 5.01cm and you'll see a change.) Whether that's a bug or intended is a question for others. If not, then "max" is for this problem:
Q. How to scale an image so that the largest dimension is 4cm? A. \externalfigure [\jobname-img] [factor=max, width=4cm, height=4cm]
If this is correct, I'd be glad to try to clarify the wiki. (I've not done much wiki-ing.)
I suppose you could fix your problem with something like
\ifdim\desiredwidth>\desiredheight \externalfigure [\jobname-img][width=\desiredwidth] \else \externalfigure [\jobname-img][height=\desiredheight] \fi