Hola,
Vale, pero, tampoco compilaría aunque hicieras el "cast" como lo hago yo más arriba: porque el puntero no se pasa a la función correcta, y eso es una errata de la ayuda o me equivoco. Por otro lado todavía no tengo claro por qué el operador "as", como dices, no es aplicable...
Desde luego, si quitamos eso y la posible errata el código que he expuesto compila y funciona como se espera. O me equivoco...