Discounting YTM and spot rate


I have question concerning discounting at YTM and Spot rate.

I get the fact that YTM is the weighted average of spot rates, and the bond’s price should be the same whether :
Discounting using YTM for all the cash flow of all maturities;
Discounting each cash flow using the corresponding Spot rate.

However, refering to question 8 of Reading 33, the two methods give two different results.

The question is the following
Consider 3-year 3% annual pay-bond FV = 100

Benchmark par curve
YTM 1year = 3%
YTM 2year = 4%
YTM 3year = 5%

I actually discounted the cash flows using 3year YTM par rate. However, in the solutions, they derived spot rates using bootstrapping and then used them to calculate the bond’s price

Bond’s price 3year YTM = 94.5535
Bond’s price using spot rates = 94.4828

Can someone explain why the two results are different please ?
Thank you so much

The short answer is that they’re different because it isn’t a par bond.

The relationship between the spot rates and the YTM holds for par bonds, but not for other bonds.

It’s amazing!their prices are indeed the same only when par bonds are caculated!could you tell me the truth?