Gradient biased to black (it seems); why?
In vertex color paint one can see the useful interpolation.  This may or may not be useful.  If you just want the gradient you could vertex color paint simple planes and use them as textures.  Blender Render.  Arrow indicates required setting.

For your example try to avoid negative coordinates relative to origin.



Nodes with exponent of 1.   Origin of cube in center of cube. Image above.  Negative Values possible for coordinates.  Not desirable for your goals.





Origin of cube is in the corner. Image Above. Zero or Positive Values for coordinates.  This origin works with your goals.



Make sure your placement of the cube has 

one corner at (0,0,0) and origin is there as well.

one corner at (1,1,1)



You may want to research Barycentric Interpolation