There's a bunch of stuff to consider here, although a lot of it depends on your environment.
First, device flexibility. If there's an emergency update that needs a reboot of the device to take effect, are you ready to take down the combined services to deal with that update? This can become a rabbit's hole of "what if?" scenarios but it's something to think about.
Secondly, performance. Will a single device handle the encryption traffic and the routing? Will it do so for the lifetime of the product? Are you going to end up buying a "big" single replacement box because one of the functions needed more horsepower, where a "medium" and "small" box would do if they were separate?
Redundancy - this ties in to the flexibility point, do you require redundancy on any of these devices? Is it easier to maintain a single HA pair rather than multiples? Perhaps HA is only required for specific functions.
Routing - this can be fun if you've got separate devices bringing traffic in to the environment. Are they all aware of each other? Are they all aware of the (possibly) multiple paths available to each other? Simplifying down to less devices can be beneficial here, but if your environment isn't this involved you may never have to worry about it.
Additional services - are you running firewalling, traffic inspection, or threat prevention on these remote links? Are you going to need an additional "protection" box for every service you break out from the main device?
Those are some of the primary things we consider. In my opinion there isn't a simple "always do it this way" answer for this one.