It is possible to write some musical apps, like those NJDude has listed, if you are looking to create more of a virtual instrument, it is much harder due to the lack of a real time audio kernal in Android and other OS limitations.
With current hardware and OS, you will be lucky to get latency below 150ms, far too long for a serious virtual instrument.
The beauty of using Basic For Android though is that you can try things out in a very short pace of time. So don't take my word for it. Have a look at Sound Pool, which is likely to give the best results currently, but requires samples for the instrument sounds. I looked briefly at the JET engine, which didn't look at all instrument friendly.
Unfortunately it is not possible to stream midi to the midi player, you have to send a file (Again an Android limitation), I have had reasonable success sending single notes as separate files which would enable the creation of a monophonic instrument. But again, having to create a file for each note introduces latency.
There are several threads in the forum if you search for them which may give some more insight.