Hi,
I think I can give you some suggestions. As a point of reference, I am MCSD and MCDBA, and spent several years as an enterprise architect with a major software company. I also taught development with a Microsoft Training Provider. ;)
There are some benefits to using stored procs for DB access. Especially parameterized ones since they can be pre-compiled for faster execution. However, this technique must be used correctly. Misusing stored procs can slow down the processor, but it should not make it "Blazingly slow"...
The item in your post which concerns me most is that the app logic is in the database. Most likely written in T-SQL. This is VERY, VERY poor architecture design because it means that DB servers will be your bottleneck and you will have substantial scalability issues.
Other than the fact that T-SQL execution is somewhat less efficient than VB/C#, but no so much as to cause horrible slow speed. My first guess for the "Blazingly Slow" performance is table locking.
The second potential problem is security and logins. I highly recommend connection pooling if at all possible which should give some performance gain if you are not currently using it.
Lastly, I wanted to make certain you are aware of the SQL server PerfMon (short for Performance Monitor). You can trace the execution of SQL statements which will let you know the cause of the slow performance. Just open Query Analyzer and execute the Stored Procs. This should be all the proof you need to show your partner there are some problems.
If the stored procs execute quickly, then either the code accessing the DB is slow (probably from not using connection pooling), there is a networking constraints to/from the DB.
Best of Luck,
Leo
ps. There is also a chance that you do not have correct indexes OR you are hitting the same table too many times.