Hi, thanks for your suggestions.
1) We have plans to support surfaces, but not in the way these plugins work (you can post links if you like). RailClone works in a very different way, offering features that are not available in other packages, but others are not possible. For example, there is not way to use Start, End or Evenly rules over a UV Surface, since these are not directions clearly defined.
2) In Max it's not possible to assign multiple materials to a single object. So, i'm afraid multi-subs are the only way. We are evaluating to use the same method of Forest (create a multi-sub material on the fly), but this adds one extra level of complexity to the plugin.
Have you considered to use Forest ? It's a pure scattering plugin, more suitable for this task. If not, you would use the classic method to create a multi-sub:
a) Attach all cars/trees in a single mesh. Use the default options, so Max creates the multi-sub.
b) Detach each element in separated objects.