Can Dynamic programming be applied to solve problems if and only if the subproblem form a DAG?
Let $V_P(n)$ represent the value of the optimal solution to a problem $P$ with size $n$. According to Bellman equations, this value is computed from the value of the optimal solutions of its subproblems $P'$: $V_P(n) = \oplus \{v_{P'} + V_{P'}(n')\}$ where $\oplus$ is an  operator such as $\max$, $\min$, +, ... $v_{P'}$ is an operator which steps from $P$ to $P'$, and $P'$ are the subproblems of $P$ with size $n'$ which is always strictly less than $n$, the size of the original problem.

From here, it seems affordable to create a graph $G(V,E)$ where $V$ are the values of the optimal solutions of different problems, and there is an edge between two vertices $u$ and $v$ if and only if $v$ represents a problem $P'$ which is acknowledged as a subproblem of task $P$ represented by vertex $u$. For example, when using Dynamic Programming for computing the Fibonacci numbers, if $u$ represents $Fib(n)$, then there are two edges from it to other vertices representing $Fib(n-1)$ and $Fib(n-2)$.

If this is the graph you meant in your question then, clearly, the resulting graph is a Directed Acyclic Graph because:


Each vertex is directed in only one direction: from $u$ to $v$ as only one problem ($P'$) can be a subproblem of another, $P$. 
It is impossible to form a loop as $n'&lt;n$.


All this said, however, I do not think that this characterization is too useful as it also applies to other techniques such as Divide and Conquer and plain recursion. As you are asking whethere there is more about it or not, let me highlight that an important issue to consider when deciding whether to use Dynamic Programming or not, is if the problem $P$ shows suboptimal structure, see this definition in the second paragraph.

Hope this helps,