Transform Position

For a school project we had to create our own Vector 3 In unity and use it later to move objects.
The goal was to make a sphere move to the position of the cube using our own vector and the subtraction of vectors (SubtractVector Function). But every time I try to set the destination of Sphere to the one I calculated on the SubtractVector function it shows me an error of "Cannot implicity convert type “MyVector3” to “UnityEngine.Vector3”.
Can someone give me some help…?

My code:

    public GameObject Cube;
    public GameObject Sphere;

    private void Start()
         Sphere = GameObject.Find("Sphere");


    private void Update()
        Vector3 test = new Vector3(1, 1, 1).normalized;

        if (Input.GetKeyDown("space"))

            MyVector3 cubePos = new MyVector3(Cube.transform.position.x, Cube.transform.position.y, Cube.transform.position.z);
            MyVector3 spherePos = new MyVector3(Sphere.transform.position.x, Sphere.transform.position.y, Sphere.transform.position.z);
            MyVector3 move = MyVector3.SubtractVector(spherePos, cubePos);

            Sphere.transform.position = move;



Own Vector code:

 public float x,y,z;

    public MyVector3(float x, float y, float z)
        this.x = x;
        this.y = y;
        this.z = z;


  public static MyVector3 SubtractVector(MyVector3 vec1, MyVector3 vec2)
        MyVector3 rv = new MyVector3(0, 0, 0);

        rv.x = vec1.x - vec2.x;
        rv.y = vec1.y - vec2.y;
        rv.z = vec1.z - vec2.z;

        return rv;

Thank you.

You need to create the Vector3 and Init it yourself, it can’t be automatic.

Sphere.transform.position = new Vector3(move.x, move.y, move.z);