Planting a butterfly bush nearby will not deter deer from eating your magnolia. You would need to surround the magnolia with butterfly bushes and still they would probably get through. I suggest either fencing or netting the magnolia, or using upon more than one of the myriad of sprays that are available to discourage deer from browsing. Switch off to a different deterrent from time to time as the deer get used to one. the ultimate solution, of course, is to fence your yard, but that is an expensive proposition.