KDB played 90 minutes while Doku was on for 77 minutes for the Red Devils as they went through to the knockout stages after finishing second in Group E, which had all four teams locked on three points ahead of the final round of fixtures.
Domenico Tedesco’s side just needed to avoid defeat and that’s exactly what happened as the 0-0 draw helped them finish in runners-up spot behind Romania.
Belgium, who also featured fellow Premier League aces Youri Tielemans, Timothy Castagne, Amadou Onana and Romelu Lukaku, started the tournament slowly with a shock 1-0 defeat to Slovakia but responded strongly with a 2-0 victory over Romania, De Bruyne adding a second to the Tielemans opener to win the tie before tonight’s draw which now sets up a tie with Les Bleus on Monday 1 July, kick-off 17:00 (UK).
In the first half, KDB was his usual mesmeric self, pulling the strings in the middle of the park and starring for the world’s No.3 ranked side.
The playmaker set up Lukaku with a clever run and intricate throughball on seven minutes but the powerful forward had his scuffed left foot shot saved while just past the half hour mark, KDB tried to trick Nita with an imaginative, swirling free-kick from the right channel which just went too wide.
He then saw a shot from just outside the area well kept out by the keeper in the final minute of the half.
Ukraine also had their chances, possibly the better in the first period, the best opportunity coming late on in the half with Roman Yaremchuk’s clever cross across goal too strong for his onrushing teammates.
Belgium and Ukraine, as well as Slovakia v Romania, all started the second period in the respective games on four points, adding extra incentive.
KDB and Doku linked up brilliantly on 58 minutes, the former playing in the latter down the left flank with the winger crossing fiercely across goal but there was no-one there to add the necessary touch and open the scoring.
Former City defender Oleksandr Zinchenko entered the action and renewed acquaintances with former teammate De Bruyne just before the hour mark, replacing Everton left-back Vitaliy Mykolenko.
KDB played in Lukaku neatly on 65 minutes but the striker, yet to score in this tournament to date, fired too close to the keeper who gathered comfortably.
Yannick Carrasco flew forward a moment later but, despite KDB being open on the right, the Saudi Pro League club Al-Shabab player let fly but it was easy for Nita. Then Doku danced past player after player before seeing his shot blocked.
Flying winger Doku was replaced on 77 minutes by PSV forward Johan Bakayoko.
There were Ukrainian cheers on 80 minutes as the goal bulged but Artem Dovbyk’s effort had merely rustled the side-netting.
Koen Casteels had to be at his alert best to keep out the cheekiest of corners out on 82 minutes as Ruslan Malinovskyi tried to score direct from a corner.
Belgum almost scored on the break on 87 minutes but Carassco’s pass to KDB was just too far behind him and the chance was gone for the City star.
Georgiy Sudakov could – and maybe should – have won it for Ukraine in stoppage time as he nudged past a couple of challenges before having the goal at his mercy only to shoot straight at a relieved Casteels.
As the whistle blew at full-time, Ukraine were eliminated despite all four teams in the group ending the first stage on four points.