Bee’s Knees means an excellent or ideally suitable person or thing.
Where as Bee in the bonnet means, to keep talking about something again and again because you think it is very important (as you are being obsessed about it or worried about it)
Example
Well, isn’t she just the intellectual bee’s knees
To us, it was the bee’s knees
Try this chocolate. It’s the bee’s knees
Do you like my new shoes? I think they are the bee’s knees
She never stops talking about dieting – she’s got a real bee in her bonnet about it.