The following example:

```html
<html>
<head>
	<script src="../../dojo/dojo.js"></script>
	<script>
		require(["delite/Stateful", "delite/register", "delite/Invalidating", "delite/Widget", "dojo/domReady!"],
			function (Stateful, register, Invalidating, Widget) {
			var C = register("test-invalidating", [HTMLElement, Widget, Invalidating], {
				preCreate: function () {
					this.addInvalidatingProperties("a");
					this.addInvalidatingProperties("b");
				},
				a: null,
				b: null,
				refreshProperties: function () {
					console.log("NO!!!");
				},
				refreshRendering: function (props) {
					console.log("called!");
				}
			});

			c = new C({}, testDiv);
			c.startup();
		});
	</script>
</head>
<body>
  <test-invalidating id="testDiv"></test-invalidating>
  <button onclick="c.b='d'">Push Me to Change Value</button>
</body>
</html>
```

works fine for me (i.e. refreshRendering is called only once). So I would need an example that reproduce the issue to investigate it.