Sum weighted nodes between nodes in a DAG efficiently
A vertex $z$ is "between $v$ and $w$" in $G$ (that is there is a path in $G$ from $v$ to $w$ that traverses $z$) if and only if both the following conditions are true: 1) there is a path from $v$ to $z$ in $G$; and 2) there is a path from $w$ to $z$ in $\overline{G}$, where  $\overline{G}$ is the graph obtained from $G$ by reversing its edges.

Using any standard visit algorithm you can compute the set $A$ of vertices reachable from $v$ in $G$ and the set $B$ of vertices reachable from $w$ in $\overline{G}$. 

Then you can compute $C = A \cap B$ and find the desired quantity as $\sum_{z \in C} \text{weight}(z)$. Each of the above steps can be performed in linear time.