While scaling (through script), nodes are not integers anymore, also not the sidebearings. I'm not sure, but ‘somehow I think I remember’ that the Type 1 spec only allows integers for point coordinates. No?
It true that scaling would result in floating coordinates. But I would rather see advantages in keeping the coordinates with floating numbers. If one has a set of transformations the result would be much better if floating numbers are used instead round the coordinates after each step.
Output will always round all coordinates.