I would be quite brisk, & agree with using the necessity for her to be walked home as a useful thing to keep visits to a timescale that suits you.
Just be absolutely confident & a bit breezy about it: 'Right 'Sarah', it's getting dark, we need to get you back home now, get your stuff'.
If she turns up uninvited at mealtimes: 'Sorry, it's our teatime - maybe tomorrow?' - then walk her home, or, better, get number & ring for someone to collect her. ('Hi, got your Sarah here, she needs picking up, it's too dark for her to walk home on her own & I'm busy getting tea...')
It'll take a while, but it'll take a damn sight longer if you don't set clear boundaries...& you will honestly be doing her a favour.
It's possible her parents will think you are rude/fussy, but nuts to that. They'll either start collecting her when you ask them to, or they'll discourage her from coming round to yours in the first place, if being rung to get her inconveniences them.
Nothing more you can do, really.