A great one!
Like it!
Regarding your GC stuff:
It might actually not really be necessary to build a mixed-mode C#/C++ assembly.
Just make sure, that your GC running time stays below your 'buffer' size, so that BASS can deliver the sample data fast enough.
I know with ASIO this is a hard thing to do and sometimes impossible.
A sample of how to code a mixed-mode assembly with BASS/Bass.Net is given here:
http://www.un4seen.com/forum/?topic=4932.msg60399#msg60399