Hola José Ángel,
A mí si me funciona, eso si cuando abro el proyecto desde Visual Studio pega un petardazo que no veas
, pero desde Visual Studio si que tira bien de veras.
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="prueba.Window1"
x:Name="Window"
Title="Window1"
Width="800" Height="600">
<Grid>
<Viewport3D>
<Viewport3D.Camera>
<PerspectiveCamera FieldOfView="50" FarPlaneDistance="100" LookDirection="0,0,-3.4142135623731" NearPlaneDistance="0.5" Position="0,0,3.4142135623731" UpDirection="0,1,0"/>
</Viewport3D.Camera>
<Viewport2DVisual3D>
<!-- Give the plane a slight rotation -->
<Viewport2DVisual3D.Transform>
<RotateTransform3D>
<RotateTransform3D.Rotation>
<AxisAngleRotation3D Angle="40" Axis="0, 1, 0" />
</RotateTransform3D.Rotation>
</RotateTransform3D>
</Viewport2DVisual3D.Transform>
<!-- The Geometry, Material, and Visual for the Viewport2DVisual3D -->
<Viewport2DVisual3D.Geometry>
<MeshGeometry3D Positions="-1,1,0 -1,-1,0 1,-1,0 1,1,0"
TextureCoordinates="0,0 0,1 1,1 1,0" TriangleIndices="0 1 2 0 2 3"/>
</Viewport2DVisual3D.Geometry>
<Viewport2DVisual3D.Material>
<DiffuseMaterial Viewport2DVisual3D.IsVisualHostMaterial="True" Brush="White"/>
</Viewport2DVisual3D.Material>
<Canvas x:Name="diana_design" Width="399.515" Height="366.545">
<Canvas x:Name="Fondo" Width="1106.556" Height="859.914" Canvas.Left="0" Canvas.Top="0">
<Rectangle x:Name="Rectangle" Width="230" Height="172" Canvas.Left="56" Canvas.Top="92" Stretch="Fill" StrokeLineJoin="Round" Stroke="#FF000000"/>
</Canvas>
<Canvas Name="h" Width="1343.199" Height="1129.887" Canvas.Left="0" Canvas.Top="0">
<Ellipse Name="Ellipse" Width="153.318" Height="123.321" Canvas.Left="106.25" Canvas.Top="115" Stretch="Fill" StrokeLineJoin="Round" Stroke="#FF000000" Fill="#FFFFFFFF"/>
</Canvas>
</Canvas>
</Viewport2DVisual3D>
</Viewport3D>
</Grid>
</Window>
Saludetes