Having built the same small site both ways, once on Eleventy and once on a single hand-rolled script, I want to lay the two side by side honestly. Neither is wrong. They just fail and shine at different sizes.
The content model
This is the first and biggest split. With Eleventy, a post is a markdown file in a folder. With a hand-rolled build, a post is usually an object in a JavaScript array baked into the script. Files win the moment you care about writing comfortably. You edit prose, not code, and you never break a build with a stray quote. Arrays win only while there are so few of them that it does not matter.
Scaling past a few pages
At two or three pages, the hand-rolled script is smaller and easier to follow. Push past a handful, and the lines invert. Every new page in the script is more routing code you write by hand. Every new page in Eleventy is a new file that the build simply discovers. One approach grows linearly with your effort. The other mostly grows on its own.
RSS and sitemaps
With the generator, a feed and a sitemap are a plugin and a few lines of config. Hand-rolled, they are yours to author and yours to keep correct. That is fine once. It is a slow tax every time the format has an edge case you did not know about.
The maintenance tax
This is the part that does not show up on day one. A hand-rolled build asks you to remember how it all fits together every time you return to it. A file-based generator externalizes those decisions into conventions you can look up. Six months later, adding a post to the generator is muscle memory. Adding one to the script means re-reading the script.
When each is the right call
If the site is a few pages you want total control over, hand-roll it and enjoy the simplicity. The moment you expect to keep writing, choose the file-based model.
The verdict
A file-based content model wins once you have more than a handful of posts. The freedom of a hand-rolled build is genuine, but it is freedom you pay for on every future edit. For anything meant to grow, let the files be the content and let the build get out of the way.