Unity5において、Cubeの下にランダムな大きさのCubeを付けるようなスクリプトを書きたいのですが上手くいきません…

public GameObject Object;

float height;

// Use this for initialization
void Start () {

height = Random.Range (0.5f, 3.0f) * -1.0f;

Vector3 pos = new Vector3 (this.transform.position.x, -1, this.transform.position.z);

Instantiate (Object, pos , Quaternion.identity);
Object.transform.localScale = new Vector3(1.0f, height , 1.0f);

Debug.Log (height);

これで動かしてみると一見上手くいっているのですが、ログのheightの値と設置したCubeのInspector上のYのScaleが一致しません。
よくよく調べてみると前回プレイボタンを押した際に出たheightの値がScaleに入ってしまっているみたいで、Unityの初回起動時にプレイボタンを押すとScaleが(1,1,1)になってしまいます…
どうすればログの値と実際のScaleの値を一致させることができるのでしょうか?