We do this for a large percentage of our customers without issue. We route public subnets to customer specific firewalls which then translate those addresses to internal hosts:
You are doing NAT. I know this is customary in commercial internet practice but in HAMNET/AMPRnet we don't like NAT.
(too much time is wasted by debugging the issues caused by inserting NAT into networks that also have direct routing)
Rob