wp8 scale and touches

change the virtual size of the screen instructions : link

but, on resolution 1080p don’t work buttons, mouse click coordinates are shifted down and to the right relative to the button. how to fix?on the other resolutions work.
code button:

class Button
{
    public delegate void ButtonPressed();
    public event ButtonPressed buttonPressedEvent;

    private Texture2D texture;
    private Rectangle rectangle;
    private Rectangle bound;

    private Vector2 position;
    
    private bool enabled = true;


    public Button(Texture2D texture, int width, int height)
    {
        this.texture = texture;
        rectangle = new Rectangle(0, 0, width, height);
        bound = new Rectangle(0, 0, width, height);
    }

    public void Update(GameTime gameTime, TouchCollection touchCollection)
    {
        if (enabled)
        {
           if (touchCollection.Count > 0)
            {
                TouchLocation touchLocation = touchCollection[0];
                if (touchLocation.State == TouchLocationState.Pressed)
                {
                    if (bound.Contains((int)touchLocation.Position.X, (int)touchLocation.Position.Y))
                        rectangle.X = rectangle.Width;
                }
                else if (touchLocation.State == TouchLocationState.Released)
                {
                    if (bound.Contains((int)touchLocation.Position.X, (int)touchLocation.Position.Y) && buttonPressedEvent != null)
                        buttonPressedEvent();
                    
                    rectangle.X = 0;
                     
                }
            }
        }
        
    }

    public void Draw(SpriteBatch spriteBatch)
    {
        spriteBatch.Draw(texture, position, rectangle, Color.White);
    }
    public void Dispose()
    {
        texture.Dispose();
    }
    public bool Enabled
    {
        get
        {
            return enabled;
        }
        set
        {
            if (value)
                rectangle.X = 0;
            else
                rectangle.X = rectangle.Width;
            enabled = value;
            
        }
    }
    public Vector2 Position
    {
        get
        {
            return position;
        }
        set
        {
            bound.X = (int)value.X;
            bound.Y = (int)value.Y;

            position = value;
        }

    }
}