Ideally, set it up so that the bindee element does always have a ScaleTransform, but it's the identity transform. Then name that ScaleTransform, and bind to it using the usual element-to-element syntax:
<TextBlock Text="One">
<TextBlock.LayoutTransform>
<ScaleTransform ScaleX="1"
ScaleY="1"
x:Name="s" /> <!-- Note the x:Name -->
</TextBlock.LayoutTransform>
</TextBlock>
<TextBlock Text="Two">
<TextBlock.LayoutTransform>
<ScaleTransform ScaleX="{Binding ScaleX, ElementName=s}"
ScaleY="{Binding ScaleY, ElementName=s}" />
</TextBlock.LayoutTransform>
</TextBlock>
If you need to bind to the element specifically, you can traverse down through the properties e.g. {Binding LayoutTransform.ScaleX, ElementName=someElement}
. This will no-op if the source element has no LayoutTransform or it isn't a ScaleTransform, but it will report runtime binding errors.