Thats not how it works. If 5-year bond has yield x, for principal P you receive Px for 5 years. With 3-year bond with yield y, you get Py for 3 years. If y > x => after 3 years rates will be lower than y. So you will get lower than P*y for the last 2 years (of 5 years).