Many of us have suffered from the inflexibility of Xamarin.Forms. As a temporary (yet evil) solution, we are using Mono.Cecil to modify the Xamarin.Forms assemblies to expose these hidden components.
A snippet which might be useful: https://gist.github.com/dementrock/e23647d5d61e573f4d6d