Moving platforms not working properly.

I am currently trying to implement moving platforms for a side-scrolling game. I am using the parenting method - this is the code I have on moving platforms:

function OnCollisionEnter(collision : Collision)
{
	if(collision.rigidbody.tag == "Player")
	{
		collision.transform.parent = transform;		
	}
}

Here’s the problem - every time the ball lands on the moving platform it deforms and stretches wildly. Does anyone know how to fix this or a better way to implement moving platforms?

“Changing the parent will modify the parent-relative position, scale and rotation but keep the world space position, rotation and scale the same.”

If platform is scaled then the ball is going to be scaled the same way.

http://unity3d.com/support/documentation/ScriptReference/Transform-parent.html