I advise you to have an internal channel of communication between the microservices.
For example to use some message broker like RabbitMQ internally to send/receive or publish/subscribe the messages between microservices.
Then your first end user facing service "in your example the Booking service" will be responsible for validating the token and authorize the customer to do this specific operation may be by communicating with IdentityServer.
Then it will communicate with Services service through Message broker and in that case, there is no need to validate the token again.
I guess this model will be simpler and give you better performance.