Cairo/Plot: properly re-scale diagram to window

D.sized uses a uniform scale, which we don't want...
update cache after drawing