I fully sympathyse with this. Unfortunately the reality is that it is not always the development that goes wrong but often the management of the whole lifecycle.
The missing step in business-built spreadsheets (or whatever) is rigour in process. The whole spec, develop, review, independent test, change management, audit, reporting, DRP etc is rare in the non IT scenario.
That goes for VB, spreadsheets, Access databases or whatever, and that's where that "garbage" comes from. The difference is that the business built spreadsheets tend to overlook that stuff so can knock something up in a short space of time. The IT solution factors it all in and prices/estimates/resources appropriately and as a result gets less done but what does get done stands a better chance of actually helping.
I am currently on the periphery of a project to replace such a system that was knocked up by the business. 40+ manual steps, a spreadsheet/access database, email, 1000+ reference documents and god knows what else keeps a team of 7 people running. Had they accepted the IT department's bid ($300-$400K) that would actually have been a better solution. However the business baulked and evolved a manual process into a mutant hybrid and that's where they are now.
And yes, I realise you claimed IT didn't want to build the app and I've gone off on a tangent from your post, if not the thread.