Realistic Soccer Ball Dribbling?

Hey Folks! iam currently working on a soccer game and the dribbling looks like this at the moment:
link: dribbling v1.gif

void OnTriggerEnter(Collider collision)
         ControllingFeet = collision.transform;
 void FixedUpdate()
         bool isControlled = ControllingFeet != null;
         if (isControlled)
        Vector3 targetPos = ControllingFeet.transform.position;

which actually just mean that, when the ball enters the trigger (which is in front of the character) it transfers the position of the collider (ControllingFeet) to the Ball.

i tried to copy the transform position of the Feet to the collider which is controlling then the ball like this:

 using UnityEngine;
 using System.Collections;
 public class Copyposition : MonoBehaviour
     public Transform itsTarget;
     void Update ()
         transform.position = new Vector3(itsTarget.position.x, 0 ,itsTarget.position.z);

but that looks stupid - and not natural at all as you can see in the second half of the gif.

after that i tried to delay the movement of the ControllingFeet like this:

transform.position = new Vector3(itsTarget.position.x+0.8f, 0 ,itsTarget.position.z);

and it comes a tiny bit closer to what i want to achieve. but only works on the X axis ( move to the right) and looks like this:

link dribble v2.gif

is somebody here having a idea how i can make the ball movemnt more natural?

You could always try using that delay code for both directions, based on which way the character is moving. I feel like the answer is just more math.