The TV should work so there may be something not correct in your setup.
Now there is an easier way, You can use the UltimateParent snippet to return the ID of the parent document X levels deep from the root. In your example I am guessing that Free Advert and Paid Advert are at the same level in the doc structure. I am guessing that they are 3 levels deep (root is 0).
[[Ditto? &tpl=`free_advert` &parents=`[!UltimateParent? &topLevel=`3`!]`]]
Another cool sippet that is not widely used is
SectionRoots, this is handy if the roots are not always in the same level.
note: I have used this in the past but don’ know if it still works with 0962. In any case you would use it like the eample above replacing the UltimateParent call.
[[Ditto? &tpl=`free_advert` &parents=`[!SectionRoots? &Sec_roots=`10,17,32,55,1`!]`]]