If boolean failing it usually means objects have history - clean your scene by deleting history. Peeps always go on about booleans not working but I use them all the time - but I keep my messes clean hehehee