Music and sound generation on older consoles have almost no standardization. Access to the system was done at the bare metal level so there were no standard APIs something like an OS or BIOS would provide like in later consoles.
Each developer had to create a custom "driver" to make the sound hardware do what they wanted. What this means is that depending on the programmer the way the sound waves are generated, data is stored, etc will vary wildly.
However, a lot of companies would either re-use their current music driver between games developed at the same time or do incremental upgrades and use that in newer ones. With knowledge of at least the driver's data format you can
mostly transplant data between games that are like this, but it still typically requires lots of little manual fixes for things like pointer addresses, etc.
What you'll need to do is find the music data in Mega Man 3 and reverse engineer how the data is stored and dealt with (Having passing knowledge of music greatly helps), then either manually create new song data or do a transplant from another Capcom game using the same driver as MM3. The Code/Data logger in FCEUXD is great for this kind of thing, though doing real debugging would be faster and better if you know how.
Attempting to use Famitracker is not going to work, since Famitracker is its own driver and you'd either have to translate the resulting Famitracker data into the native MM3 format or implement the Famitracker driver in place of the existing music engine: The latter would be a far, far harder thing to do.
As a quick example of what dealing with NES music data is like, I wrote
this document during preliminary work on a hack I was going to do ages ago.
Even the small amount of information you see there is enough to completely re-do any song in the game, so it's not a terribly daunting amount of data you'll need to figure out, usually.