I have been in government IT for 9 years.
My impression is that, locally, Agile has been mostly used as a technique for shifting all the responsibility for the result to the customer.
We have had to do several couple million dollar projects in the past 5–6 years and by now it is quite certain to me that the devil is in the details.
As long as you have (a) competent product owners, who *know* what they want, (b) efficient project managers (from both sides) and (c) reliable development company, you can have a pretty good result, whichever method you use: agile, waterfall, scrum, frum or kaboom.
As soon as you have either: product owners without a clue or vision (or even worse: lack of interest in the product), project managers who fail to keep the project in the scope or developers who aim to only follow the letter of the contract, rather than the actual needs of the project… you will have a still-born monstrosity, regardless of the metod used.