The reason Marill didn't inherit the move Sing is because you have to have Marill hold the Sea Incense since Marill gets sing when it is hatched as an Azurill. This is proven by this:
Moves marked with a dagger (†) can only be bred onto Marill if it hatches as an Azurill, and cannot be obtained otherwise.
(Click on the Level up by breeding and scroll down and you should find that same sentence)
Sing is marked with a dagger, so this means that Marill gets Sing only by hatching into an Azumarill.
Hope this helps.