I thought about this more and the change I proposed in https://reviews.freebsd.org/D41231 seems unnecessarily complicated, regardless of which characters will be chosen to denote going up and down the process tree. ps -D'^$' suggests there are possibly more characters to use and maybe even some kind of DSL is available.
So a simpler option is to keep the new aspect of -d (that it traverses the tree down, even if ps is given a list of PIDs) and add a -D that would work the same, but the other direction. Piotr