vanilla butter cream is NEVER white. It always has a yellowness to it due to the high butter content. A lot of people seem to use vegetable shortening such as Trex or Crisco for making white buttercream - but that (in my opinion) simply makes it greasy, tasteless and gross. The other popular way of whitening it is to use Wilton Super White which is a paste. You need quite a lot, so this ends up rather expensive and remember to buy two or three bottles at a time.
Someone has taken taken the time and effort to put a really clever little video up on Youtube....
Basically, you make your normal buttercream and add the tiniest amount of VIOLET food colouring to it. What happens as you mix this in is that the violet counteracts the yellow of the buttercream and neutralises it to white !
This photo isn't great - the lighting in my kitchen is rather dire - but hopefully you can see the difference. The buttercream on the beaters has the violet added and the buttercream on the teaspoon hasn't.
Do take care only to add the violet food colouring a tiny speck at a time. If you add too much, it will turn a yucky grey. This can be "brought back" however if you add some extra butter and icing sugar and basically increase the batch volume.