Ho risolto (quasi...). Il dannato mangling e' il colpevole: il compilatore esporta le funzioni con tutti gli gingilli del "C" appresso, e non c'e' stato verso di eliminarlo (almeno io non ci sono riuscito), nemmeno compilando il progretto a mano da console. L'entry point alla routine quindi (nel mio caso) non si chiama "Somma" ma "Somma@8" (@8 indica l'allocazione necessaria). Alla fine ho dovuto creare un Alias nella dichiarazione della libreria in VB, perche' non si possono usare caratteri "speciali" nel nome:

Declare Function Somma Lib "C:\directory_progetto\nome_della_dll.dll" Alias "Somma@8" (ByVal a As Long, ByVal b As Long) As Long

Adesso PARE tutto funzionare, ma per esserne sicuro dovrei dare in mano il codice a qualcuno che ne capisce un minimo di "C" (e che faccia tutto per bene) in modo da poter verificare che i risultati che ottengo siano esatti (ci sono un tot di funzioni matematiche dentro... e non ho modo di verificare che il risultato sia corretto se non con un confronto).... se ti invio l'include originale (non e' necessario farlo diventare una libreria) e ti mando una sequenza di dati di prova potresti restituirmi il risultato?
Grazie.