Overlay networks have been recently developed to support multicast framework. Specially, overlay architectures based on proxies and leased lines can provide applications with optimal performance in terms of bandwidth, reliability, delay guarantee, etc. In this paper, we propose a balanced multicast routing algorithm for these proxy-based overlay architectures to utilize the network resources efficiently while keeping the delay guarantee for each multicast session. We first model the routing problem as a diameter-constraint Steiner tree problem. Then, a balanced solution which takes both the cost and diameter into account is proposed. Extensive simulations show that our multicast routing algorithm provides superior performance with respect to other heuristics.