Hi Rasi,
Here's what I would do, use D365 Field Service and define the volunteers as Bookable Resources.
learn.microsoft.com/.../set-up-bookable-resources
This will then allow you to use the Resource Scheduler within Field Service to perform manual or automated scheduling.
learn.microsoft.com/.../scheduling-capabilities
I've had some experience in home-based care scenarios, and what you would likely want to do is to create a care plan for a client, the care plans would then generate routine visits, a scheduler (person assigned to managed schedules) would then schedule based on availability/client preferences/location, and volunteers updated with their roster/iterinary.
Once you have scheduling configured, you could then build upon with enabling access to your volunteers to the Field Service Mobile App. This then provides further capabilities, to enable your volunteers to pull up important information about the client, use checklists, and sign off on work.
Regards,
Andrew