Notion supports this without too much manual work. Create a database, have two separate views, one a Board view and the other a Calendar view. To make a todo show up on the calendar, you can either set the date property manually or create a Button property defined to "Button is clicked → Edit `This page` → `Date`: `Date Triggered`. To make it even better, create a View of that database right next to itself, and you can keep both the Board and the Calendar view open simultaneously. Dragging from the Board to the Calendar works to set the dates for that entry/todo/page. I've been using this workflow since January and very happy with it.