Your first "On collision with waypoint" event picks one waypoint. You can't just pick another waypoint in the same event or its sub-events.
Try adding "System -> Pick All waypoint" before "Waypoint pick instance with UID" sub-event.
If this doesn't help, then move this sub-event to a function.
Something like this:
... Call Function MoveToWaypoint(Enemy.UID, Enemy.MyNextWaypoint)
On Function MoveToWaypoint
Enemy pick instance with UID= Function.Param(0)
Waypoint pick instance with UID = Function.Param(1)
Enemy Find path to (waypoint.x, waypoint.y)