I don't know whether or not this has been brought up or not but bare with me and try to imagine this...
The Ball part is motorized like the toy that is in the video with Grant from Mythbusters. I know this is easier said than done, however, that seems as if it would be the best way to do it in order to make this remotely possible.
As for the Head of the droid, I think we're all thinking a little too advanced here. Magnets wouldn't work as the head would tend to "stick' on the ball until it reached a certain speed which would likely result in the head leaning to far forward upon initial movement; causing it to fall off.
So here is my "Simple" idea... and there is a reason why that is in quotes. Basically you use more motors...
Not in the ball, but in the head itself. You would have to create a system of motors where the ball and head connect, so that when the head (which houses the motors) touches the ball, several motors ( with grip pads, wheels, or whatever you come up with) simply rest on the ball's surface.
This is where it would get tricky... Within the head, the motors would have to be connected to some type of balancing system, that way when the head starts to lean to far backward it is automatically moved forward. keep in mind, since the ball is propelling forward this would happen very quickly due to the momentum the device is already carrying. That is why this process must be automated... this would allow the ball to move around while the head appears to be balancing on top; however, the head itself would be constantly moving in every direction in order to compensate for the ball's movement.
I believe this can be done... but it would likely take a lot of time, trial/error, and not to mention money... (then again this site is full of geniuses whom always find the cheapest solution so I won't be surprised when I see this thing rolling around at celebration Anaheim)