A tree is a special case of a DAG. It has no cycles and a unique path between any two nodes. This makes DP on trees simpler. For trees, you do not need topological sort. Root the tree at any node and process nodes in DFS order (children before parents).
This naturally gives you the DP order. Many tree DP problems ask for sums, counts, or extrema over paths. The logic is the same as DAG DP, but the structure is cleaner.