Why is my random number generator not using all possible numbers.

I have a random number generator set to generate a number between 1,8 how ever many times already decided, but every time I run it, it generate 3 to 4 number and repeats these number until the quota is filled.

 void Start()
    {
        System.Random weather = new System.Random();
        VAR.Weather = weather.Next(1, 4);
        print(VAR.Weather);
        System.Random customer = new System.Random();
        VAR.Customers = customer.Next(10, 21);
        if (VAR.Weather == 1)
        {
            VAR.Customers = VAR.Customers + 2;
        }
        if (VAR.Weather == 2)
        {
            VAR.Customers = VAR.Customers - 2;
        }
        if (VAR.Weather == 3)
        {
            VAR.Customers = VAR.Customers + 3;
        }
        print(VAR.Customers);
        while (VAR.Customers > 0)
        {
            System.Random order = new System.Random();
            VAR.Order = order.Next(1, 8);
            print(VAR.Order);
            VAR.Customers--;
        }
    }    
}

The problem generator is the last one.

all good figured it out