Изменяется ли размер холста между типами устройств, используемых в Android?
Да.
Но вы можете использовать независимые от плотности пиксели (dp) для имеют одинаковый размер среди разных устройств.
XML:
<resources>
<dimen name="one_dp">1dp</dimen>
</resources>
Java:
float oneDp = getResources().getDimension(R.dimen.one_dp);
canvas.drawRect(0, 0, 100 * oneDp, 100 * oneDp, paint);