Check the obvious first:
Path or ShaderUri actually resolves,For Lottie, a missing or invalid asset path will prevent the animation from loading.
Lottie, CompositionAnimatedControl, and ShaderAnimatedControl only create their composition custom visual after the control is loaded. If you call playback methods before Loaded, there is no underlying visual to message yet.
If DurationSeconds remains 0, the Lottie asset likely failed to load or the animation file is invalid for Skottie.
Inspect DrawEventArgs.ErrorText. The control surfaces shader compilation failures there instead of throwing from the draw callback.
Use this rule of thumb:
AnimationControl for pure Avalonia drawing,CompositionAnimatedControl for custom Skia rendering,Lottie for Lottie JSON playback,ShaderAnimatedControl for SKSL effects.