I have had several DBE subcontractors tell me that they have had their subcontracts terminated by a prime contractor after the work performed on their subcontract exceed the DBE commitment on the project. These DBEs had done good work but the prime contractors took the work away from them because their crews "needed the work." No notification to the DBEs. This is a termination for convenience.
If a subcontractor fails to show, does shoddy work, doesn't pay for material then the prime contractor has a right to terminate a subcontract for "cause" and finish the subcontractor's work. Prime contractors like to have a little cushion over the amount of the DBE commitment because the Iowa DOT requires the prime to subcontract at least that amount, but a subcontract is a subcontract.
I don't know the solution to the problem. Primes and DBEs need to develop long-term trusting relationships. I think many have. Some prime contractors are better to work for than others. The good ones need to be rewarded and the poor ones penalized.