Per quanto riguarda la mia esperienza con Mono su Linux ti posso dire che non è necessario ricompilare i sorgenti (come giustamente dici, infatti, non sono veri eseguibili ma "contenitori" di codice MSIL), ma per avviare tali programmi devi passarli come argomento a mono; ad esempio, per lanciare "test.exe" alla shell devi scrivere
codice:
mono test.exe
.
Credo che queste considerazioni si applichino anche a mono su Mac. Al limite puoi associare l'estensione .exe a mono, così da fare prima ad avviare le applicazioni .NET (non ho praticamente alcuna esperienza su Mac, ma credo che si possa fare facilmente ).