spawning too many enemys,enemy spawn to many

The game will start up and spawn a whole fleet of airplane when all it needs to do is spawn one more with each wave here is my code help would be appricated.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SpawnManager : MonoBehaviour
{
    public GameObject Enemy;
    private float spawnRange = 500.0f;
    public int enemyCount;
    public int waveNumber = 1;
    void Start()
    {
        SpawnEnemyWave(waveNumber);
    }
    void Update()
    {
        enemyCount = FindObjectsOfType<Enemy>().Length;
        if (enemyCount == 0)  
        {
            waveNumber++; 
            SpawnEnemyWave(waveNumber);
        }
    }
    void SpawnEnemyWave(int enemiesToSpawn) 
    {
        for (int i = 0; i < enemiesToSpawn; i++) 
        {
           Instantiate(Enemy, GenerateSpawnPosition(), Enemy.transform.rotation);  
        }
    }
    private Vector3 GenerateSpawnPosition () 
    {
        float spawnPosX = Random.Range(-spawnRange, spawnRange);
        float spawnPosZ = Random.Range(-spawnRange, spawnRange);
        float spawmPosY = Random.Range(-spawnRange, spawnRange);
        Vector3 randomPos = new Vector3(spawnPosX, spawmPosY, spawnPosZ);
        return randomPos;
    }
}

The enemy’s will spawn but there are too many enemies spawning

It looks like enemyCount might not be incremented, so every frame the condition if (enemyCount == 0) is true.