Autoscheduling functionality autosnaps tasks to start immediately once it's connected predecessor is completed, so if you notice that you move a task to a specific date, but then it snaps back to start immediately after it's predecessor it is likely caused by the Autoscheduling.
If you want your tasks to start on a specific date you need to remove the connection dependency to the predecessor which will allow that task to float freely on the specific dates, unaffected by other tasks.