Issue with with BGroupLayout and BScrollView

I’m facing a problem with a BLayoutBuilder::Group<> embedded in a BView attached to a BScrollView.
A series of additional BViews will be added to the group to show the icons for the elements dropped (it’s for my utility DropIt!).
I’ve set the B_SCROLL_VIEW_AWARE flag for the BView and provided a method to calculate the scrollbar parameters. So far so good, except that if i scroll up or down i get several tearing artifacts.

The code in the Draw() method is as follows:

template<typename T, typename Key, typename Value>
void
DockListView<T, Key, Value>::Draw(BRect updateRect)
{
	SetHighColor(ui_color(B_WINDOW_TAB_COLOR));
	StrokeRect(Bounds());
	SetExplicitSize(fLayout.View()->Bounds().Size());
}

The problem is that the view is not invalidated, if I add an explicit call to Invalidate(updateRect); seems to solve the problem but clearly introduces an unwanted flickering. What am I missing or doing wrong?
Please note that I’ve used B_WINDOW_TAB_COLOR on purpose to show the issue while I would normally use B_CONTROL_BORDER_COLOR.

First possibility: Your scroll view is too large and expands behind the window border or some other view. When scrolling, the scroll view will copy the pixels up or down and only invalidate the newly exposed part. But this doesn’t work if the scrolled view had some drawing by something else on top of it.

second option: you want to draw some non-scrollable elements in your scrolled view (a border, a floating overlay, …). In that case, it’s up to you to invalidate the corresponding areas on scrolling

The size of the scroll view is set explicitly to match the window size, so I think it’s the second case because I draw a border with StrokeRect().
How can I invalidate the area upon scrolling? Should I override ScrollTo() in my view and invalidate from there?

Yes, that seems like a good way to do it in that situation.

Visually, there seems to be little difference with invalidating within Draw(), if at all.
This is evident while slowly dragging the scrollbar up and down, the border flickers regardless.
Would it make sense to embed the scroll view in the BView “widget” targeting just the BLayoutGroup?
It doesn’t seem to be a common practice, though.