I respond to your comment in another answer because all this can’t fit in a comment, but it’s just a clarification.
To start I was left with the impression that you’re asking about an undirected graph where forced paths are bidirectional.
Even so, when the graph is directed, of course assuming that all forced paths don’t overlap and all edges along a forced path point in the same direction, my proposed solution can be slightly modified to work. The modification is that all ingoing edges to one endpoint of a forced path will be redirected towards the other endpoint of the path only if the path is in that direction.
Also a note when a flow has to start from a vertex u which is an endpoint of a path will start instead from the other endpoint of the path v if the forced path points from u to v.
First of all about the example you provided where 4->6 and 3->5 are the directed forced paths, there are 2 units of flow that can go from 4 to 5. One unit of flow goes along the path 4->3->5 and the other one along the path 4->6–>5. So under my proposed transformation the resulting graph will have the following directed edges:
6->5, 6->5
And when you run MF(4,5) the flow will start from 6 because 4->6 is a forced path and will find 2 units of flow from 6 to 5 along the 2 edges between them.
To give another example to make it more clear let’s use the graph in your question where the forced paths are bidirectional and the graph is undirected. Under the transformation the result will be a graph with the following directed edges:
4->3, 6->3, 4->5, 6->5, 3->6, 3->4, 5->6, 5->4,
4->6, 6->4
Even that example might not be clear as it is a special case where all the vertices that are connected to one of the endpoints of the forced path are connected to both endpoints of the path.
But the idea is that edges that point to an endpoint of a forced path that will force you to go along it will be redirected as shortcuts to the other endpoint of the path. And edges that point away from an endpoint will be preserved. So that way if the endpoints of the path are u and v and the forced path is u<->v you can’t go to u and then to one of its neighbours unless you went along the forced path and the same for v. So in the transformed graph there are no edges that point to u except the ones that used to point to v, and there are no edges that point to v except the ones that used to point to u.