Have you checked that the container for the item is already created before calling ScrollIntoView? You probably need to delay the call until the container is created. Not sure how to do that the elegant way.
So avalonia provides a cross-platform control library/windowing framework. Would there be any value in having an abstraction layer for custom owner drawn controls such that they could be used in any framework which could implement a base service set?