Yes, it would be straightforward to make this generic; the only drawback would be a bunch more type parameters throughout the implementation.  I'm inclined to make this change, in order to make the rust-geom library as general as possible, though I'm also curious whether Servo could do without it.  (For comparison, Gecko's `ScaleFactor` uses a hard-coded single-precision `float`.)